![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DesignPatterns
阿蒙Amon
这个作者很懒,什么都没留下…
展开
-
面向对象设计模式与原则
a.面向对象三大特征 封装,隐藏内部实现 继承,复用现有代码 多态,改写对象行为 b.对象是什么 从概念层面讲,对象是某种拥有责任的抽象。 从规格层面讲,对象是一系列可以被其他对象使用的公共接口。 从语言实现层面讲,对象封装了代码和数据。 c.设计原则 针对接口编程,而不是针对实现编程 优先使用对象组合,而不是类继承 封装变化点 使用重构得到模式 d.更具体的设计原则 单一职责原则(SRP) 一个原创 2017-12-28 15:35:19 · 177 阅读 · 0 评论 -
Singleton单例(创建型模式)
保证一个类仅有一个实例,并提供一个该实例的全局访问点。 -《设计模式》 GoF a.单线程Singleton模式的几个要点 实例构造器可以设置为protected以允许子类派生。 一般不要持之ICloneable接口,因为这可能会导致多个对象实例,与Singleton模式的初衷违背。 一般不要支持序列化,因为这也有可能导致多个对象实例,与Singleton模式的初衷违背。 只考虑到了对象创建的管理,原创 2017-12-28 15:42:03 · 238 阅读 · 0 评论 -
Abstract Factory抽象工厂(创建型模式)
提供一个接口,让该接口负责创建一系列“相关或者相互依赖的对象”,无需制定它们具体的类。 –《设计模式》 GoF a.new的问题 常规的对象创建方法: // 创建一个Road对象 Road road = new Road(); new的问题:实现依赖,不能应对“具体实例化类型”的变化。 解决思路 封装变化点–哪里变化,封装哪里。 潜台词:如果没有变化,当然不需要额外的封装。 工厂模式的缘起 变化原创 2017-12-29 22:36:17 · 256 阅读 · 0 评论