设计模式
Black-Coder
010100111001
展开
-
创建型模式 --- 单件模式(Singleton Pattern)
动机(Motivation): 在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一个实例,才能确保它们的逻辑正确性、以及良好的效率。 如何绕过常规的构造器,提供一种机制来保证一个类只创建一个实例? 这应该是类设计者的责任,而不是类使用者的责任。 结构图: 意图: 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 生活的例子:原创 2016-03-06 22:25:02 · 417 阅读 · 0 评论 -
创建型模式 --- 抽象工厂(Abstract Factory)
常规的对象创建方法: //创建一个Road对象 Road road =new Road();new 的问题: 实现依赖,不能应对“具体实例化类型”的变化。 解决思路: 封装变化点—–哪里变化,封装哪里 潜台词: 如果没有变化,当然不需要额外的封装!工厂模式的缘起 变化点在“对象创建”,因此就封装“对象创建” 面向接口编程—-依赖接口,而非依赖实原创 2016-03-07 22:31:50 · 376 阅读 · 0 评论 -
创建型模式 --- 建造者模式(Builder)
Builder模式的缘起: 假设创建游戏中的一个房屋House设施,该房屋的构建由几部分组成,且各个部分富于变化。如果使用最直观的设计方法,每一个房屋部分的变化,都将导致房屋构建的重新修正….. 动机(Motivation): 在软件系统中,有时候面临一个”复杂对象”的创建工作,其通常由各个部分的子对象用一定算法构成;由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的变化,但是将原创 2016-03-08 21:27:58 · 413 阅读 · 0 评论