logo
  • write-homewrite-home-active首页
  • icon-chaticon-chat-activeAI 智能助手
  • icon-pluginicon-plugin-active浏览器插件
  • icon-subjecticon-subject-active学科题目
  • icon-uploadicon-upload-active上传题库
  • icon-appicon-app-active手机APP
首页
/
计算机
题目

请比对CORBA、EJB和COM技术的优缺点,以及三种技术方案的选择方式和各自的应用环境。第一题:答:(1)传统的面向过程方法:是结构化设计与分析吗?如是,在第一章绪论PPT 11页开始,到17页左右。有些直接抄标题,像类型的。(2)面向对象,就是以对象观点来分析现实世界中的问题。从普通人认识世界的观点出发,把事物归类、综合,提取其共性并加以描述。其基本思想是从现实世界中客观存在的事物(即对象)出发来构造系统并在系统中尽可能运用人类的自然思维方式。面向对象方法的主要特点: (a)从问题域中存在的客观事物来抽象对象,并以此作为构造软件系统的基本构成单位。(b)事物的静态特征由对象的属性来表示;事物的动态特征由对象的方法来表示。(c)对象的属性和方法结合为一体,成为一个独立的实体,对外屏蔽其内部细节,也即封装。(d)对事物分类,具有相同属性和方法的对象归为一类,类是这些对象的抽象描述,每个对象是它所属类的一个实例。(e)通过较多或较少地忽略事物之间的差异,来实现不同程度上的抽象,以得到较一般的类和较特殊的类,特殊类继承一般类的属性和方法。(f)复杂的对象可以把简单对象作为其构造成分,也即聚合。(g)对象之间通过消息进行通信。(h)用关联来表达对象之间的静态关系。面向对象的优势:(a)生产效率高,(b)优良的可复用性(c)面向对象方法对软件复用的支持。与传统的面向过程方法相比:(a)面向对象方法是从现实世界中客观存在的事物(即对象)出发来构造软件系统;(b)在系统构造中尽可能运用人类的自然思维方式;(c)强调直接以问题域(现实世界)中的事物为中心来思考问题、认识问题;(d)根据事物本质特点,将其抽象为对象,作为系统的基本构成单位;(e)这可以使系统直接地映射问题域,保持问题域中事物及其相互关系的本来面貌。第二题:答:也许有人会问:“为什么要学习设计模式呢?”原因有很多,一些非常明显,而另一些则不那么明显。学习模式最常见的理由是因为我们可以借其: ● 复用解决方案——通过复用已经公认的设计,我能够在解决问题时取得先发优势,而且避免重蹈前人覆辙。我可以从学习他人的经验中获益,用不着为那些总是会重复出现的问题再次设计解决方案了。 ● 确立通用术语——开发中的交流和协作都需要共同的词汇基础和对问题的共识。设计模式在项目的分析和设计阶段提供了共同的基准点。模式还为我们提供了观察问题、设计过程和面向对象的更高层次的视角,这将使我们从“过早处理细节”的桎梏中解放出来。等你读完本书的时候,我希望你将同意这是学习设计模式的最重要的原因之一。它将改变你的思维定式,使你成为更加高效的分析人员。为了说明这一优点,我想引述一段两个木匠之间关于“如何为橱柜制作抽屉”的谈话。想像一下,有两个木匠在讨论怎样为橱柜制作抽屉。木匠甲:你认为我们应该怎样制作这些抽屉?木匠乙:这个嘛,我想榫子应该这样做:在木料上直着锯下去,然后向回转45°再锯,接着再直着锯,然后换一个方向45°往回锯,接着再直着锯下去,然后……现在,你要做的就是搞清楚他们说的是什么意思!这段描述是不是让人不知所云?木匠乙到底给出了什么建议?细节往往就是如此!让我们试着将他的叙述画出来。这听上去像不像似曾相识的代码评审?在评审中有一位程序员这样描述自己的代码:然后,我在这里用一个WHILE 循环来……接着是一系列IF语句执行……这里我用一条SWITCH语句处理……你获得的是对代码细节的描述,而对“程序到底要做什么”、“为什么这么做”,你却毫无头绪!当然,正经的职业木匠可不会这样说话。真实的情形应该是这样:木匠甲:我们应该用鸠尾榫还是斜榫?看到这里的本质区别没有?木匠们现在讨论的是一个问题的解决方案上的本质差异,他们的讨论层次更高、也更抽象了,从而避免了陷入具体解决方案的细节泥沼中。当木匠谈到“斜榫”时,他的脑子里已经对这个解决方案浮现出如下特征: ● 它是一个更简单的解决方案——斜榫更容易制作。只需将制作榫的木料锯出45°斜面,然后用钉子或者木胶接合起来即可。 ● 它更轻型——斜榫比鸠尾榫强度低。在重压下,将无法保持榫接。 ● 它不太引人注目——斜榫的一个锯面,与鸠尾榫的多个锯面相比,更不显眼。当木匠谈到“鸠尾榫”时,他的脑子里浮现出另一些特征。这些特征对外行来说可能并不明显,但任何一位木匠都会明白如故: ● 它是一个更复杂的解决方案——制作鸠尾榫涉及的问题更多。因此,它的成本也更高。 ● 它不容易受温度和湿度影响——当温度和湿度变化时,木材会膨胀或收缩,但是,鸠尾榫仍然能够保持坚固。 ● 它与紧固系统无关——事实上,鸠尾榫甚至不需要依赖胶水。 ● 它看上去更赏心悦目——如果制作精良,会很美观。也就是说,鸠尾榫是一个坚固、可靠、美观的榫,但制作复杂(所以成本也比较高)。所以,当木匠甲这样问的时候:我们应该用鸠尾榫还是斜榫?他真正要问的问题是:我们是应该用一个制作昂贵但美观耐用的榫,还是应该只用一个制作快速而且不美观的榫,能坚持到检查结束就行?我们应该说,木匠们的讨论其实是在两个层次上进行的:他们话语表面上的层次,和谈话真正的内容,层次更高,外行听不出来,而其中含义却非常丰富。这种更高的层次就是“木匠模式”的层次,它反映了木匠眼中的真正的设计问题。在第1种情形中,木匠乙讨论的是榫的实现细节,反而使真正的问题模糊不清。在第2种情形中,木匠甲要根据榫的成本和接合性质来决定使用哪种榫。谁更有效率呢?你更愿意与谁一起工作?当我说“模式有助于提高思考层次”时,其中就蕴涵着这一层含义。从本书后面的内容中你将了解到,如果能够这样提高自己的思考层次,新的设计方法也将浮现出来。这正是模式真正的威力所在。 第三题:目前,面向对象软件测试用例设计方法,还处于研究和发展阶段。与传统的软件测试不同的是。面向对象测试更关注于设计适当的操作序列以检查类的状态。设计测试用例有以下几个要点:(1) 应该唯一标识每一个测试案例, 并且与被测试的类明显地建立关联;(2) 陈述测试对象的一组特定状态;(3) 对每一个测试建立一组测试步骤,要思考或确定的问题包括:对被测试对象的一组特定状态,一组消息和操作,考虑当对象测试时可能产生的一组异常,一组外部条件,辅助理解和实现测试的补充信息。设计类测试用例1.类级随机测试2. 类级划分测试测试类间测试用例:1. 基于场景的测试2. 行为测试。 第四题:PPT 第四章28页 模版方法(Template Method):定义了一个算法的步骤,并允许子类别为一个或多个步骤提供其实现方式。让子类别在不改变算法架构的情况下,重新定义算法中的某些步骤 。第五题:PPT 第七章 7.7 120页,例子不会举,和同学讨论一下吧。第六题:请比对CORBA、EJB和COM技术的优缺点,以及三种技术方案的选择方式和各自的应用环境。(1)各自优缺点:(A) CORBA具有如下突出特点:对象类较之于传统软件的功能模块而另具有的优点是:A. 易于理解,具有完整的语义特征; B. 易于扩充和修改,具有较高的通用性和适应性; C. 易于构造组装,具有规范的外部接口。 D. ORBA具有如下突出特点: E. 分布计算技术和面向对象编程技术(Object Oriented Programming,OOP)相融合。 F. 引入了“代理”的概念。 G. 客户端程序与服务器端程序的完全分离。 提供了“软件总线”的功能。 设计原则和设计方式的层次化。 EJB具有以下特点: EJB以构件的形式组织服务器:EJB构件是直接用Java语言编写的服 Java语言编写的跨平台特性使得EJB构件可以方便地移植到各 JB服务器上; JB构件实现仅需考虑应用需求,其系统级服务诸如事务管理、安全 JB服务器自动进行管理的; JB体系结构具有面向对象、分布式、跨平台、可扩充性、安全性以 及便于开发等优点,同时它还是以协议为中心的,任何协议都可以被利 用。 COM有以下好处:(a)即插即用(b)二进制重用(c)分布式应用(d)COM与语言无关(e)与平台无关。 COM是面向对象的。(d)COM能够容易的用户化和升级你的应用程序。。(e)COM能够分布式应用。(f)COM组件可以用任何语言编写。 ? EJB构件模型给开发者提供了以下的支持:1. 构件包含应用程序逻辑 2. 可重用的构件 3. 可伸缩性 4. 资源管理 5. 事务支持 6. 并发性管理 ? CORBA用于在不同进程(程序)之间,甚至是不同物理机器上的进程之间通讯。( EJB详细地定义了一个可以方便地部署Java构件的服务框架模型,用于创建可伸缩、多层次、跨平台、分布式的应用,并可创建具有动态扩展性的服务器端的应用( COM是一种以组件为发布单元的对象模型,这种对象模型使各软件组件可以用一种统一的方式进行交互。COM不仅定义了组件程序之间进行交互的标准,也提供了组件程序运行所需的环境。

请比对CORBA、EJB和COM技术的优缺点,以及三种技术方案的选择方式和各自的应用环境。

第一题:答:(1)传统的面向过程方法:是结构化设计与分析吗?如是,在第一章绪论PPT 11页开始,到17页左右。有些直接抄标题,像类型的。

(2)面向对象,就是以对象观点来分析现实世界中的问题。从普通人认识世界的观点出发,把事物归类、综合,提取其共性并加以描述。其基本思想是从现实世界中客观存在的事物(即对象)出发来构造系统并在系统中尽可能运用人类的自然思维方式。

面向对象方法的主要特点: (a)从问题域中存在的客观事物来抽象对象,并以此作为构造软件系统的基本构成单位。(b)事物的静态特征由对象的属性来表示;事物的动态特征由对象的方法来表示。(c)对象的属性和方法结合为一体,成为一个独立的实体,对外屏蔽其内部细节,也即封装。(d)对事物分类,具有相同属性和方法的对象归为一类,类是这些对象的抽象描述,每个对象是它所属类的一个实例。

(e)通过较多或较少地忽略事物之间的差异,来实现不同程度上的抽象,以得到较一般的类和较特殊的类,特殊类继承一般类的属性和方法。(f)复杂的对象可以把简单对象作为其构造成分,也即聚合。(g)对象之间通过消息进行通信。(h)用关联来表达对象之间的静态关系。

面向对象的优势:(a)生产效率高,(b)优良的可复用性(c)面向对象方法对软件复用的支持。

与传统的面向过程方法相比:(a)面向对象方法是从现实世界中客观存在的事物(即对象)出发来构造软件系统;(b)在系统构造中尽可能运用人类的自然思维方式;(c)强调直接以问题域(现实世界)中的事物为中心来思考问题、认识问题;(d)根据事物本质特点,将其抽象为对象,作为系统的基本构成单位;(e)这可以使系统直接地映射问题域,保持问题域中事物及其相互关系的本来面貌。

第二题:答:也许有人会问:“为什么要学习设计模式呢?”原因有很多,一些非常明显,而另一些则不那么明显。

学习模式最常见的理由是因为我们可以借其:

  ● 复用解决方案——通过复用已经公认的设计,我能够在解决问题时取得先发优势,而且避免重蹈前人覆辙。我可以从学习他人的经验中获益,用不着为那些总是会重复出现的问题再次设计解决方案了。

  ● 确立通用术语——开发中的交流和协作都需要共同的词汇基础和对问题的共识。设计模式在项目的分析和设计阶段提供了共同的基准点。

模式还为我们提供了观察问题、设计过程和面向对象的更高层次的视角,这将使我们从“过早处理细节”的桎梏中解放出来。

等你读完本书的时候,我希望你将同意这是学习设计模式的最重要的原因之一。它将改变你的思维定式,使你成为更加高效的分析人员。

为了说明这一优点,我想引述一段两个木匠之间关于“如何为橱柜制作抽屉”的谈话。

想像一下,有两个木匠在讨论怎样为橱柜制作抽屉。

木匠甲:你认为我们应该怎样制作这些抽屉?

木匠乙:这个嘛,我想榫子应该这样做:在木料上直着锯下去,然后向回转45°再锯,接着再直着锯,然后换一个方向45°往回锯,接着再直着锯下去,然后……

现在,你要做的就是搞清楚他们说的是什么意思!

这段描述是不是让人不知所云?木匠乙到底给出了什么建议?细节往往就是如此!让我们试着将他的叙述画出来。

这听上去像不像似曾相识的代码评审?在评审中有一位程序员这样描述自己的代码:

然后,我在这里用一个WHILE 循环来……接着是一系列IF语句执行……这里我用一条SWITCH语句处理……

你获得的是对代码细节的描述,而对“程序到底要做什么”、“为什么这么做”,你却毫无头绪!

当然,正经的职业木匠可不会这样说话。真实的情形应该是这样:

木匠甲:我们应该用鸠尾榫还是斜榫?

看到这里的本质区别没有?木匠们现在讨论的是一个问题的解决方案上的本质差异,他们的讨论层次更高、也更抽象了,从而避免了陷入具体解决方案的细节泥沼中。

当木匠谈到“斜榫”时,他的脑子里已经对这个解决方案浮现出如下特征:

  ● 它是一个更简单的解决方案——斜榫更容易制作。只需将制作榫的木料锯出45°斜面,然后用钉子或者木胶接合起来即可。

  ● 它更轻型——斜榫比鸠尾榫强度低。在重压下,将无法保持榫接。

  ● 它不太引人注目——斜榫的一个锯面,与鸠尾榫的多个锯面相比,更不显眼。

当木匠谈到“鸠尾榫”时,他的脑子里浮现出另一些特征。这些特征对外行来说可能并不明显,但任何一位木匠都会明白如故:

  ● 它是一个更复杂的解决方案——制作鸠尾榫涉及的问题更多。因此,它的成本也更高。

  ● 它不容易受温度和湿度影响——当温度和湿度变化时,木材会膨胀或收缩,但是,鸠尾榫仍然能够保持坚固。

  ● 它与紧固系统无关——事实上,鸠尾榫甚至不需要依赖胶水。

  ● 它看上去更赏心悦目——如果制作精良,会很美观。

也就是说,鸠尾榫是一个坚固、可靠、美观的榫,但制作复杂(所以成本也比较高)。

所以,当木匠甲这样问的时候:

我们应该用鸠尾榫还是斜榫?

他真正要问的问题是:

我们是应该用一个制作昂贵但美观耐用的榫,还是应该只用一个制作快速而且不美观的榫,能坚持到检查结束就行?

我们应该说,木匠们的讨论其实是在两个层次上进行的:他们话语表面上的层次,和谈话真正的内容,层次更高,外行听不出来,而其中含义却非常丰富。这种更高的层次就是“木匠模式”的层次,它反映了木匠眼中的真正的设计问题。

在第1种情形中,木匠乙讨论的是榫的实现细节,反而使真正的问题模糊不清。在第2种情形中,木匠甲要根据榫的成本和接合性质来决定使用哪种榫。

谁更有效率呢?你更愿意与谁一起工作?

当我说“模式有助于提高思考层次”时,其中就蕴涵着这一层含义。从本书后面的内容中你将了解到,如果能够这样提高自己的思考层次,新的设计方法也将浮现出来。这正是模式真正的威力所在。

 第三题:目前,面向对象软件测试用例设计方法,还处于研究和发展阶段。与传统的软件测试不同的是。面向对象测试更关注于设计适当的操作序列以检查类的状态。设计测试用例有以下几个要点:

(1) 应该唯一标识每一个测试案例, 并且与被测试的类明显地建立关联;

(2) 陈述测试对象的一组特定状态;

(3) 对每一个测试建立一组测试步骤,要思考或确定的问题包括:对被测试对象的一组特定状态,一组消息和操作,考虑当对象测试时可能产生的一组异常,一组外部条件,辅助理解和实现测试的补充信息。设计类测试用例1.类级随机测试2. 类级划分测试测试类间测试用例:1. 基于场景的测试2. 行为测试。

 第四题:PPT 第四章28页 模版方法(Template Method):定义了一个算法的步骤,并允许子类别为一个或多个步骤提供其实现方式。让子类别在不改变算法架构的情况下,重新定义算法中的某些步骤 。

第五题:PPT 第七章 7.7 120页,例子不会举,和同学讨论一下吧。

第六题:请比对CORBA、EJB和COM技术的优缺点,以及三种技术方案的选择方式和各自的应用环境。

(1)各自优缺点:(A) CORBA具有如下突出特点:

对象类较之于传统软件的功能模块而另具有的优点是:

A. 易于理解,具有完整的语义特征;
B. 易于扩充和修改,具有较高的通用性和适应性;
C. 易于构造组装,具有规范的外部接口。
D. ORBA具有如下突出特点:
E. 分布计算技术和面向对象编程技术(Object Oriented Programming,OOP)相融合。
F. 引入了“代理”的概念。
G. 客户端程序与服务器端程序的完全分离。
提供了“软件总线”的功能。
设计原则和设计方式的层次化。
EJB具有以下特点:
EJB以构件的形式组织服务器:EJB构件是直接用Java语言编写的服
Java语言编写的跨平台特性使得EJB构件可以方便地移植到各
JB服务器上;
JB构件实现仅需考虑应用需求,其系统级服务诸如事务管理、安全
JB服务器自动进行管理的;
JB体系结构具有面向对象、分布式、跨平台、可扩充性、安全性以
及便于开发等优点,同时它还是以协议为中心的,任何协议都可以被利
用。
COM有以下好处:(a)即插即用(b)二进制重用(c)分布式应用(d)COM与语言无关(e)与平台无关。
COM是面向对象的。(d)COM能够容易的用户化和升级你的应用程序。。(e)COM能够分布式应用。(f)COM组件可以用任何语言编写。
?
EJB构件模型给开发者提供了以下的支持:1. 构件包含应用程序逻辑 2. 可重用的构件 3. 可伸缩性 4. 资源管理 5. 事务支持 6. 并发性管理
?
CORBA用于在不同进程(程序)之间,甚至是不同物理机器上的进程之间通讯。(
EJB详细地定义了一个可以方便地部署Java构件的服务框架模型,用于创建可伸缩、多层次、跨平台、分布式的应用,并可创建具有动态扩展性的服务器端的应用(
COM是一种以组件为发布单元的对象模型,这种对象模型使各软件组件可以用一种统一的方式进行交互。COM不仅定义了组件程序之间进行交互的标准,也提供了组件程序运行所需的环境。

题目解答

答案

(A) ? (C)?

相关问题

  • 4/5 以下属于人工智能实际应用的是()。A. 机器视觉B. 人脸识别C. 计算机辅助自动规划D. 智能工业机器人E. 刷卡门禁

  • 下列哪项不是求解对抗搜索问题的基本算法( ) A.反向传播算法 B.广度优先排序算法 C.Alpha-Beta剪枝算法D.最小最大搜索算法

  • 由脸书(Facebook)公司开发的深度学习编程框架是()A. TensorFlowB. PaddlePaddleC. PyTorchD. Mindspore

  • 8、信息安全“三个不发生”不包括( )。单选题Box 确保不发生大面积信息系统故障停运事故Box 确保不发生恶性信息泄密事故Box 确保不发生信息外网网站被恶意篡改事故Box 确保不发生信息内网非法外联事故

  • 下列哪项属于因果推理模型()A. 因果图B. 神经符号推理C. 符号推理模型D. 结构因果模型

  • 网络安全包括物理安全[1]、逻辑安全、操作系统安全及联网安全,其中逻辑安全包括访问控制[2]、加密、安全管理及用户身份认证。A. 正确B. 错误

  • AdaBoosting采用多个单一分类器组成一个强分类器()A. 错误B. 正确

  • 下列哪项贪婪最佳优先搜索算法的描述正确()A. 贪婪最佳优先搜索不属于启发式搜索算法B. 贪婪最佳优先搜索是一种A*搜索算法C. 贪婪最佳优先搜索是一种广度优先搜索算法D. 贪婪最佳优先搜索属于有信息搜索算法

  • 下列哪个方法属于知识图谱推理方法()A. 路径排序算法B. 深度学习推断C. 广度优先搜索D. 归纳逻辑程序设计

  • Windows中“复制”操作的快捷键是Ctrl+V。

  • 9、不在网络安全的基本属性范围内的()。A. 机密性B. 可用性C. 完整性D. 多样性

  • 1、网上银行系统的一次转账操作过程中发生了转账金额被非法篡改的行为,这破坏了信息安全的()属性。A. 完整性B. 保密性C. 不可否认性D. 可用性

  • 下列哪项关于监督学习算法的描述正确()A. 强化学习的训练效果一定优于监督学习B. 主要的监督学习方法包括生成方法和判别方法C. 广度优先搜索算法是一种监督学习算法

  • 3.判断题K-means聚类算法对数据的尺寸敏感。()A. 对B. 错

  • 程序=算法+()A. 数据结构B. 程序结构C. 控制结构[1]D. 体系结构

  • 下列不属于量子机器学习算法的是()A. 量子支持向量机B. 量子主成分分析C. 薛定谔方程求解D. 深度量子学习

  • 2、网络安全工作的目标包括:()。A. 信息机密性B. 信息完整性C. 服务可用性D. 以上都是

  • 7、 加强电脑安全防护,及时升级病 毒库,安装防火墙,及时查杀病毒和木马,是防范 电信网络诈骗的有效做法。A. 正确B. 错误

  • 网络安全包括物理安全[1]、逻辑安全、操作系统安全及联网安全,其中逻辑安全包括访问控制[2]、加密、安全管理及用户身份认证。A. 正确B. 错误

  • 以下哪种方法属于卷积神经网络的基本组件()。A. 卷积层B. 池化层C. 激活函数D. 复制层

上一页下一页
logo
广州极目未来文化科技有限公司
注册地址:广州市黄埔区揽月路8号135、136、137、138房
关于
  • 隐私政策
  • 服务协议
  • 权限详情
学科
  • 医学
  • 政治学
  • 管理
  • 计算机
  • 教育
  • 数学
联系我们
  • 客服电话: 010-82893100
  • 公司邮箱: daxuesoutijiang@163.com
  • qt

©2023 广州极目未来文化科技有限公司 粤ICP备2023029972号    粤公网安备44011202002296号