框架的理解

1框架与类库之间的比较
类强调数据及对数据操作的方法的内聚性,所以其支持比函数库更加有效的小规模的复用。且其并未捕捉软件中的规范控制流、协作和可变性,因而虽广泛应用但有效范围有限。
类库为第一代面向对象的开发技术。而框架被称为第二代面向对象开发技术,其对类库的扩充在于框架中的哪些类可以相互协作,来为一组相关的应用提供可复用的架构,其相互协作产生的是不完全的应用。
白盒框架:通过面向对象的诸如继承性和动态绑定的语言特征,可扩展性在白盒框架中的得以实现。人们可以复用并且定制已有功能,这是通过从框架的基类继承,并且采用类似于Template Method模式重载预先定义的虚方法来实现的,这种模式定义了一种由派生类提供各个步骤的算法。
黑盒框架:通过定义接口,可扩展性在黑盒框架中得以实现,这种接口允许目标通过组合以及委托的方式插入到框架中。人们通过定义一些类可以实现对已有功能的服用,这些类定义要遵循特定的接口,采用诸如Function Object/Bridage/Strategy、Pluggable Factory的模式将这些类继承到框架中。
黑盒框架使用比白盒简单,因为开发人员只需了解很少的框架内部构造知识,但是黑盒框架设计比白盒要复杂。

2 框架与组件之间的比较
组件是一个软件系统被封装的一部分,实现了特定的服务或是一组服务。一个组件会提供一个或多个接口为它的服务提供访问。
组件是第三代开发技术,常见包括ActiveX空间和COM组件等。
组件比框架在此法和空间上的耦合更小,例如应用能够在不需要从现有基类中间他们子类化的情况下,就可以服用组件。并且,人们可以通过应用诸如Proxy和Broker之类的常见模式,将组件分布到整个网络的各个服务器上,为客户端提供远程的访问。

3.框架与模式之间的比较
虽然模式可以抽象设计和完成架构知识的复用,但其并不能直接产生可复用的代码。而框架的复用是通过将常见的模式和模式语言具体化并重构常见的执行角色来实现的。

作者:chinaclock
来源:CSDN
原文:https://blog.csdn.net/chinaclock/article/details/48975423
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值