面向对象系统中有两种基本的复用方式:框架复用和类库复用。下列关于框架和类库的描述不正确的是(47)。

admin2019-06-08  22

问题 面向对象系统中有两种基本的复用方式:框架复用和类库复用。下列关于框架和类库的描述不正确的是(47)。

选项 A、框架是一个“半成品”的应用程序
B、类库只包含一系列可被应用程序调用的类
C、框架会为一个特定的目的实现一个基本的、可执行的架构
D、类库是框架的一种扩展形式

答案D

解析 框架与类库都可以认为是一种基础结构,而我们编写的代码是应用代码,若是基础代码调用应用代码,则这种基础结构是框架。反之,若是应用代码调用基础代码,则这种基础结构是类库。框架和类库的区别:框架是一个“半成品”的应用程序,而类库只是包含一系列可被应用程序调用的类。类库给用户提供了一系列可复用的类,这些类的设计都符合面向对象原则和模式。用户使用时,可以创建这些类的实例,或从这些类中继承出新的派生类,然后调用类中相应的功能。在这一过程中,类库总是被动的相应用户的调用请求。框架则会为某一特定目的实现一个基本的、可执行的架构。框架中已经包含了应用程序从启动到运行的主要流程,流程中那些无法预先确定的步骤留给用户来实现。程序运行时,框架系统自动调用用户实现的功能组件。这时,框架系统的行为是主动的。所以,可以说类库是死的,而框架是活的。应用程序通过调用类库来完成特定的功能,而框架则通过调用应用程序来实现整个操作流程。框架是控制倒转原则的完美体现。在面向对象领域,“回调函数”的替代物就是“模板方法模式”,也就是“好莱坞原则”。模板方法是框架的基础,任何框架系统都离不开模板方法模式。应用程序和框架系统之间依赖关系的特点:(1)应用程序和框架系统之间实际上是双向调用,双向依赖的关系。(2)依赖倒转原则可以减弱应用程序到框架之间的依赖关系。(3)“控制反转”及具体的模板方法模式可以消解框架到应用程序之间的依赖关系,这也是所有框架系统的基础。(4)框架系统可以独立重用。注:依赖是两个模型元素之间的关系,被依赖的模型元素发生变化就会影响到另一个模型元素。依赖倒转(Dependency Inversion Principle)的定义:上层模块不应该依赖于下层模块,它们共同依赖于一个抽象;抽象不能依赖于具象,具象依赖于抽象。其含意是:为了消解两个模块间的依赖关系,应该在两个模块之间定义一个抽象接口,上层模块调用抽象接口定义的函数,下层模块实现该接口。
转载请注明原文地址:https://jikaoti.com/ti/N1J7FFFM
0

最新回复(0)