刘伟技术博客

专注软件架构、设计模式、重构、UML和OOAD!

实现对象的复用——享元模式(五)

14.5 单纯享元模式和复合享元模式        标准的享元模式结构图中既包含可以共享的具体享元类,也包含不可以共享的非共享具体享元类。但是在实际使用过程中,我们有时候会用到两种特殊的享元模式:单纯享元模式和复合享元模式,下面将对这两种特殊的享元模式进行简单的介绍:        1.单纯享...

2012-06-15 23:02:28

阅读数:7961

评论数:10

实现对象的复用——享元模式(四)

14.5 带外部状态的解决方案        Sunny软件公司开发人员通过对围棋棋子进行进一步分析,发现虽然黑色棋子和白色棋子可以共享,但是它们将显示在棋盘的不同位置,如何让相同的黑子或者白子能够多次重复显示且位于一个棋盘的不同地方?解决方法就是将棋子的位置定义为棋子的一个外部状态,在需要时再...

2012-06-15 22:55:03

阅读数:7811

评论数:3

实现对象的复用——享元模式(三)

14.3 完整解决方案        为了节约存储空间,提高系统性能,Sunny公司开发人员使用享元模式来设计围棋软件中的棋子,其基本结构如图14-4所示: 图14-4 围棋棋子结构图        在图14-4中,IgoChessman充当抽象享元类,BlackIgoChessma...

2012-06-15 22:45:58

阅读数:8795

评论数:6

实现对象的复用——享元模式(二)

享元模式结构较为复杂,一般结合工厂模式一起使用,在它的结构图中包含了一个享元工厂类,其结构图如图14-3所示:   图14-3 享元模式结构图       在享元模式结构图中包含如下几个角色:       ● Flyweight(抽象享元类):通常是一个接口或抽象类,在抽象享元类中声明了具...

2012-06-15 22:27:52

阅读数:9287

评论数:4

实现对象的复用——享元模式(一)

当前咱们国家正在大力倡导构建和谐社会,其中一个很重要的组成部分就是建设资源节约型社会,“浪费可耻,节俭光荣”。在软件系统中,有时候也会存在资源浪费的情况,例如在计算机内存中存储了多个完全相同或者非常相似的对象,如果这些对象的数量太多将导致系统运行代价过高,内存属于计算机的“稀缺资源”,不应该用来“...

2012-06-15 22:24:11

阅读数:10884

评论数:13

如何在类图中标注设计模式(一)

随着设计模式的广泛使用,如何在结构图(主要是UML类图)中标注设计模式成为大家讨论的一个热点话题。设计模式是软件设计中的一些微结构,通过一种合理的方法来标注设计模式既有助于开发人员更好地进行设计软件系统,也有利于理解一些遗留系统,具体来说,设计模式的标注具有以下意义:      (1) 在系统设计...

2012-06-01 00:30:11

阅读数:5767

评论数:2

提示
确定要删除当前文章?
取消 删除
关闭
关闭