上一页 1 ··· 23 24 25 26 27
摘要: 适配(转换)的概念无处不在......适配,即在不改变原有实现的基础上,将原先不兼容的接口转换为兼容的接口。例如:二转换为三箱插头,将高电压转换为低电压等。动机(Motivate): 在软件系统中,由于应用环境的变化,常常需要将“一些现存的对象”放在新的环境中应用,但是新环境要求的接口是这些现存对象... 阅读全文
posted @ 2016-01-22 10:07 无心々菜 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 依赖关系倒置: 动机(Motivate): 在软件系统中,经常面临着“某些结构复杂的对象”的创建工作;由于需求的变化,这些对象经常面临着剧烈的变化,但是它们却拥有比较稳定一致的接口。 如何应对这种变化?如何向“客户程序(使用这些对象的程序)"隔离出“这些易变对象”,从而使得“依赖这些易变对象的... 阅读全文
posted @ 2016-01-21 17:44 无心々菜 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 耦合关系: 动机(Motivation): 在软件系统中,由于需求的变化,"这个对象的具体实现"经常面临着剧烈的变化,但它却有比较稳定的接口。 如何应对这种变化呢?提供一种封装机制来隔离出"这个易变对象"的变化,从而保持系统中"其它依赖的对象"不随需求的变化而变化。意图(Intent): 定义一个用... 阅读全文
posted @ 2016-01-21 14:45 无心々菜 阅读(157) 评论(0) 推荐(0) 编辑
摘要: Builder模式的缘起: 假设创建游戏中的一个房屋House设施,该房屋的构建由几部分组成,且各个部分富于变化。如果使用最直观的设计方法,每一个房屋部分的变化,都将导致房屋构建的重新修正.....动机(Motivation): 在软件系统中,有时候面临一个"复杂对象"的创建工作,其通常由各个部分的... 阅读全文
posted @ 2016-01-20 14:31 无心々菜 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 常规的对象创建方法://创建一个Road对象Road road =new Road();new 的问题: 实现依赖,不能应对“具体实例化类型”的变化。解决思路: 封装变化点-----哪里变化,封装哪里 潜台词: 如果没有变化,当然不需要额外的封装!工厂模式的缘起 变化点在“对象创建”,因此就封装“对... 阅读全文
posted @ 2016-01-20 11:58 无心々菜 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 创建型模式---单件模式(Singleton Pattern)动机(Motivation): 在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一个实例,才能确保它们的逻辑正确性、以及良好的效率。 如何绕过常规的构造器,提供一种机制来保证一个类只创建一个实例? 这应该是类设计者的责任,... 阅读全文
posted @ 2016-01-20 11:54 无心々菜 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 创建型: 1.单件模式(Singleton Pattern) 2.抽象工厂(Abstract Factory) 3.建造者模式(Builder) 4.工厂方法模式(Factory Method) 5.原型模式(Prototype) 结构型: 6.适配器模式(Adapter Pattern) 7.桥接 阅读全文
posted @ 2016-01-20 11:01 无心々菜 阅读(262) 评论(0) 推荐(0) 编辑
上一页 1 ··· 23 24 25 26 27