文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>理解面向对象设计5(建立面向对象模型之设计模型)

理解面向对象设计5(建立面向对象模型之设计模型)

时间:2010-05-01  来源:qingfenghao

2.3 设计模型

设计模型(也称设计模式--------Design Patterns)主要用于构建三大类软件:应用(Application)、工具集(Toolkit)和框架(Framework)。

  • 应用

实现具体功能的软件。它对代码设计的要求是:内部复用性高,松耦合,对象之间不要有太多依赖(比如一个对象包含太多其他对象)。抽象类不多,很多类都有具体实现。

  • 工具集

供应用或其他程序使用的软件。它抽象公共的功能,还要考虑应用在不同的平台和场景中,对设计要求比应用难。比如文件I/O类库。


  • 框架

对同类应用抽象一个可复用的框架,这样开发者只需编写少量代码就可以完成一个具体应用。它的特点是抽象类比较多,也有一些具体实现,它的设计难度最大。

 

工具集是代码复用,而框架是设计复用。程序在复用工具集时,直接调用其实现;而在复用框架时,一般需自己编写实现,供框架调用。

MFC是一个工具集和框架的综合体,开发者可在其上开发应用。其一个缺点是只针对Windows平台,所以有了Java。

 

在众多设计模型中,我们可以看到很多对象之间包含的情况。从处理方式上来看,有两种:一种是包含对象根据一定流程调用被包含对象进行处理,这时被包含对象是被动的,比如Strategy模型;另一种是被包含对象在被事件触发后,调用包含对象的方法进行处理,这时被包含对象是主动的,比如Mediator和State模型。

2.3.1  composite

重合模型的主要特征是对象内部包含同类对象,也就是说,对象是由一(多)个同类对象构成。比如窗口由多个子窗口构成,MFC中大量可见这种模型。



另一个比较好的例子是目录。目录由目录和文件构成。

2.3.2  bridge

桥接模型的一个典型应用是跨平台的实现。

问题:





解决:




还有其他很多设计模型,详细请见《Design Patterns》一书。
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载