设计模式培训有感
2014-11-10 20:50
218 查看
第一:思维决定方式。
在GOF提及的23种设计模式中,有多种设计模式最后编写出来的代码非常相似,为什么它们又被归类为不同的设计模式呢?由于它们各自面对的问题不同,要解决的思考出发点不同,虽然最后采取的形式是相似的。
第二:多问问why,而不仅仅局限于how。
多想想为何就那样,非它不可,而不是应该怎样。
第三:面向对象的典型思维特征:多态、继承、重载、组合、封装。
设计模式都是迎合这些目标,贯彻这些思维特征,也能演化出自己的设计模式。
第四:学习把"行为"抽象成对象。
对象不仅仅是简单的实体,也可把某一类行为抽象成为一个对象。
第五:敢于把一个大的对象作为参数传递。
在某些情况下,传递一个大的对象要比传递几个简单的参数更有效。
第六:设计模式不是极端的方案,而是在性能和复用可扩展之间做了一个折衷的权衡。
在某些情况下设计模式未必就是最好的方案,但设计模式应该是一个权衡得最好的方案。
很多时候并不是我们面对一个简单的场景去试图套某个模式,而是当我们用简单方法解决不了时,诉诸于设计模式。
今天具体学习了一下三种设计模式:
策略模式:解决扁平化的问题;
装饰模式:修饰已有功能;
访问者模式:访问者与被访问者分工配合,解耦解决某个问题。
在GOF提及的23种设计模式中,有多种设计模式最后编写出来的代码非常相似,为什么它们又被归类为不同的设计模式呢?由于它们各自面对的问题不同,要解决的思考出发点不同,虽然最后采取的形式是相似的。
第二:多问问why,而不仅仅局限于how。
多想想为何就那样,非它不可,而不是应该怎样。
第三:面向对象的典型思维特征:多态、继承、重载、组合、封装。
设计模式都是迎合这些目标,贯彻这些思维特征,也能演化出自己的设计模式。
第四:学习把"行为"抽象成对象。
对象不仅仅是简单的实体,也可把某一类行为抽象成为一个对象。
第五:敢于把一个大的对象作为参数传递。
在某些情况下,传递一个大的对象要比传递几个简单的参数更有效。
第六:设计模式不是极端的方案,而是在性能和复用可扩展之间做了一个折衷的权衡。
在某些情况下设计模式未必就是最好的方案,但设计模式应该是一个权衡得最好的方案。
很多时候并不是我们面对一个简单的场景去试图套某个模式,而是当我们用简单方法解决不了时,诉诸于设计模式。
今天具体学习了一下三种设计模式:
策略模式:解决扁平化的问题;
装饰模式:修饰已有功能;
访问者模式:访问者与被访问者分工配合,解耦解决某个问题。
相关文章推荐
- 设计模式培训之八:建造者模式
- 23种设计模式总集-个人培训记
- 读设计模式 动态代理 有感
- 设计模式原则总结--读《大话设计模式》有感
- 承接设计模式的培训
- 设计模式培训之四:策略模式
- 设计模式培训之三:抽象工厂
- 设计模式培训之一:为什么要用单例模式?
- 读Head.First设计模式有感
- 最近读设计模式有感
- Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之09.JDBC DAO设计模式
- 看设计模式有感
- [广告]侯捷老师的设计模式培训
- 设计模式有感
- 设计模式有感第一集(组合原则与只需要生成一次对象的类设计)
- 微软卓越工程师-设计模式培训(20070824)
- 武侠中的方法学--GOF设计模式学习有感
- 设计模式培训之六:原型模式
- 设计模式培训之九:外观模式
- 设计模式培训1-模式与原则