⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 apa.htm

📁 corba比较入门级的介绍详细间接了corba访问发布各种细节。
💻 HTM
📖 第 1 页 / 共 4 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"><HTML><HEAD><SCRIPT LANGUAGE="JavaScript"><!--function popUp(pPage) { var fullURL = document.location; var textURL = fullURL.toString(); var URLlen = textURL.length; var lenMinusPage = textURL.lastIndexOf("/"); lenMinusPage += 1; var fullPath = textURL.substring(0,lenMinusPage); popUpWin = window.open('','popWin','resizable=yes,scrollbars=no,width=525,height=394'); figDoc= popUpWin.document; zhtm= '<HTML><HEAD><TITLE>' + pPage + '</TITLE>'; zhtm += '</HEAD>'; zhtm += '<BODY bgcolor="#FFFFFF">'; zhtm += '<IMG SRC="' + fullPath + pPage + '">'; zhtm += '<P><B>' + pPage + '</B>'; zhtm += '</BODY></HTML>'; window.popUpWin.document.write(zhtm); window.popUpWin.document.close(); // Johnny Jackson 4/28/98 }//-->                                                                </SCRIPT>	<META NAME="Author" Content="Bryan Flores">	<META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=iso-8859-1">	<TITLE>Teach Yourself CORBA In 14 Days -- Appendix A --Answers to Quizzes and Exercises</TITLE></HEAD><BODY TEXT="#000000" BGCOLOR="#FFFFFF"><CENTER><H1><IMG SRC="../button/sams.gif" WIDTH="171" HEIGHT="66" ALIGN="BOTTOM" BORDER="0"><BR><FONT COLOR="#000077">Teach Yourself CORBA In 14 Days</FONT></H1></CENTER><CENTER><P><A HREF="../ch14/ch14.htm"><IMG SRC="../button/previous.gif" WIDTH="128" HEIGHT="28"ALIGN="BOTTOM" ALT="Previous chapter" BORDER="0"></A><A HREF="../apb/apb.htm"><IMGSRC="../button/next.gif" WIDTH="128" HEIGHT="28" ALIGN="BOTTOM" ALT="Next chapter"BORDER="0"></A><A HREF="../index.htm"><IMG SRC="../button/contents.gif" WIDTH="128"HEIGHT="28" ALIGN="BOTTOM" ALT="Contents" BORDER="0"></A> <HR></CENTER><CENTER><H1><FONT COLOR="#000077">Appendix A<BR>Answers to Quizzes and Exercises</FONT></H1></CENTER><UL>	<LI><A HREF="#Heading1">Day 1: Getting Familiar with CORBA</A>	<UL>		<LI><A HREF="#Heading2">Quiz</A>	</UL>	<LI><A HREF="#Heading3">Day 2: Understanding the CORBA Architecture</A>	<UL>		<LI><A HREF="#Heading4">Quiz</A>	</UL>	<LI><A HREF="#Heading5">Day 3: Mastering the Interface Definition Language (IDL)</A>	<UL>		<LI><A HREF="#Heading6">Quiz</A>		<LI><A HREF="#Heading7">Exercises</A>	</UL>	<LI><A HREF="#Heading8">Day 4: Building a CORBA Application</A>	<UL>		<LI><A HREF="#Heading9">Quiz</A>		<LI><A HREF="#Heading10">Exercises</A>	</UL>	<LI><A HREF="#Heading11">Day 5: Designing the System: A Crash Course in Object-Oriented	Analysis and Design</A>	<UL>		<LI><A HREF="#Heading12">Quiz</A>		<LI><A HREF="#Heading13">Exercise</A>	</UL>	<LI><A HREF="#Heading14">Day 6: Implementing Basic Application Capabilities</A>	<UL>		<LI><A HREF="#Heading15">Quiz</A>		<LI><A HREF="#Heading16">Exercise</A>	</UL>	<LI><A HREF="#Heading17">Day 7: Using Exceptions to Perform Error Checking</A>	<UL>		<LI><A HREF="#Heading18">Quiz</A>		<LI><A HREF="#Heading19">Exercises</A>	</UL>	<LI><A HREF="#Heading20">Day 8: Adding Automated Teller Machine (ATM) Capability</A>	<UL>		<LI><A HREF="#Heading21">Quiz</A>		<LI><A HREF="#Heading22">Exercise</A>	</UL>	<LI><A HREF="#Heading23">Day 9: Using Callbacks to Add Push Capability</A>	<UL>		<LI><A HREF="#Heading24">Quiz</A>		<LI><A HREF="#Heading25">Exercises</A>	</UL>	<LI><A HREF="#Heading26">Day 10: Learning About CORBA Design Issues</A>	<UL>		<LI><A HREF="#Heading27">Quiz</A>	</UL>	<LI><A HREF="#Heading28">Day 11: Using the Dynamic Invocation Interface (DII)</A>	<UL>		<LI><A HREF="#Heading29">Quiz</A>	</UL>	<LI><A HREF="#Heading30">Day 12: Exploring CORBAservices and CORBAfacilities</A>	<UL>		<LI><A HREF="#Heading31">Quiz</A>		<LI><A HREF="#Heading32">Exercises</A>	</UL>	<LI><A HREF="#Heading33">Day 13: Developing for the Internet Using CORBA and Java</A>	<UL>		<LI><A HREF="#Heading34">Quiz</A>	</UL>	<LI><A HREF="#Heading35">Day 14: Web-Enabling the Bank Example with Java</A>	<UL>		<LI><A HREF="#Heading36">Quiz</A>		<LI><A HREF="#Heading37">Exercise</A>	</UL></UL><P><HR SIZE="4"><CENTER><H1></H1></CENTER><H2><A NAME="Heading1"></A><FONT COLOR="#000077">Day 1: Getting Familiar with CORBA</FONT></H2><H2><FONT COLOR="#000077"></FONT></H2><H3><A NAME="Heading2"></A><FONT COLOR="#000077">Quiz</FONT></H3><DL>	<DD><B>1. What does IIOP stand for, and what is its significance?<BR>	</B>IIOP (Internet Inter-ORB Protocol) is a protocol that allows ORBs from various	CORBA vendors to interoperate with each other, using the TCP/IP protocols. Implementation	of IIOP is a requirement for CORBA 2 compliance.<BR>	<B><BR>	2. What is the relationship between CORBA, OMA, and OMG?<BR>	</B>The Object Management Group (OMG) is the organization that controls the OMA and	CORBA standards. The Object Management Architecture (OMA) consists of Object Request	Broker (ORB) functionality, CORBAservices, CORBAfacilities, domain interfaces, and	application objects. Finally, the Common Object Request Broker Architecture (CORBA)	is the standard implementation for the ORB functionality of the OMA.<BR>	<B><BR>	3. What is a client stub?<BR>	</B>A client stub is a piece of code, usually generated by an IDL compiler, that	allows a client application to interface to CORBA server objects. The interface presented	by the client stub is exactly the same as the interface of the server, giving the	client the illusion that method calls are performed locally.<BR>	<B><BR>	4. What is an object reference? An IOR?<BR>	</B>An object reference is a pointer to a CORBA object. A client makes all method	calls to a CORBA object through a reference to that object. An IOR, or interoperable	object reference, is the CORBA/IIOP terminology for an object reference.</DL><H2><A NAME="Heading3"></A><FONT COLOR="#000077">Day 2: Understanding the CORBA Architecture</FONT></H2><H3><A NAME="Heading4"></A><FONT COLOR="#000077">Quiz</FONT></H3><DL>	<DD><B>1. What is marshaling?<BR>	</B>Marshaling is the process of converting method parameters to a format that can	be transmitted across the network. (Unmarshaling is simply the reverse of marshaling.)<BR>	<B><BR>	2. What are the responsibilities of an ORB?<BR>	</B>An ORB locates an object implementation given an object reference, prepares a	server to receive requests, and marshals and unmarshals parameters in a method call.<BR>	<B><BR>	3. Where do server skeletons and client stubs come from?<BR>	</B>Server skeletons and client stubs are generated by the IDL compiler.<BR>	<B><BR>	4. Which server activation policy describes a server that is started and stopped	manually?<BR>	</B>This is the persistent server policy.<BR>	<B><BR>	5. How does the use of IDL enhance language independence of CORBA objects?<BR>	</B>IDL provides a language-independent mechanism for describing the interfaces of	CORBA objects. The language-independent constructs of IDL can then be mapped to language-specific	constructs using an IDL compiler for a particular language.</DL><H2><A NAME="Heading5"></A><FONT COLOR="#000077">Day 3: Mastering the Interface DefinitionLanguage (IDL)</FONT></H2><H3><A NAME="Heading6"></A><FONT COLOR="#000077">Quiz</FONT></H3><DL>	<DD><B>1. Define a type (using <TT>typedef</TT>), called <TT>temperatureSequence</TT>,	that is a <TT>sequence</TT> of <TT>sequence</TT>s of <TT>float</TT>s (yes, this is	legal).</B><BR>	The IDL definition would look like this:<BR>	<FONT COLOR="#0066FF"><TT><BR>	typedef sequence&lt;sequence&lt;float&gt;&gt; temperatureSequence;</TT></FONT></DL><PRE></PRE><DL>	<DD><B>2. Why might a type like the one described in the preceding question be useful?<BR>	</B>Imagine a temperature-measuring system that periodically samples the current	temperature. The temperature readings gathered through a single day could potentially	be stored in a <TT>sequence&lt;float&gt;</TT>. Now imagine that at the end of each	day, the set of temperature data produced for that day is stored in another <TT>sequence</TT>.	This <TT>sequence</TT> type would be a <TT>sequence&lt;sequence&lt;float&gt;&gt;</TT>,	which is precisely the answer to question 1.<BR>	<B><BR>	3. Why are exceptions useful?<BR>	</B>Exceptions are useful for at least two reasons. First, consider a method that	returns a <TT>boolean</TT>. If exceptions were not available, the method would have	to reserve certain return values to signal error conditions. Of course, doing this	eliminates one possible valid return value. In the case of a <TT>boolean</TT> return	value, there are only two possible return values, so giving up one of them to signal	an error condition is not practical. Second, when used in languages that directly	support exceptions, they can greatly simplify error handling. Rather than check the	return value of each method call for an error condition result, a developer can create	a more generic error handling mechanism, resulting in cleaner code. Additionally,	because unhandled exceptions are passed up the call stack, a hierarchy of exception	handlers can be created.<BR>	<B><BR>	4. Why is the <TT>module</TT> construct useful?<BR>	</B>The <TT>module</TT> construct is useful because it facilitates the partitioning	of a system. A well-partitioned system is easier to define and implement than a monolithic	system because the divide-and-conquer approach creates independent or semi-independent	components of manageable size. A monolithic design, by comparison, does little to	create manageable components of the system.<BR>	<B><BR>	5. Name some practical uses for the <TT>octet</TT> data type.<BR>	</B>The <TT>octet</TT> data type is useful for any type of data that should not undergo

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -