读书笔记之大话设计模式
记得是几年前就知道GOF的23种设计模式,知道这个概念的同时也顺带知道了另一个概念:设计模式很难。以至于拖到现在,我才把第一次把这些神秘的家伙拉通了解一遍,了解完之后,两个感觉:1、它其实也没有想象中的那样难。2、代码原来可以如此优美。
设计模式分类:
创建型:原来就是一个 new 都能有这么多的解决方案。
单例、原型、工厂方法、抽象工厂、建造者
结构性:类之间的关系不仅仅只有继承那么单一,组合会体会到意想不到的效果。
代理、适配器、桥接、装饰、外观、享元、组合
行为型:让你真正感受到 设计原则和面向对象编程特性 灵活运用之后的强大。原来编程真的是门艺术。
模板方法、策略、命令、责任链、状态、观察者、中介、迭代、访问者、备忘录、解释器
面向对象设计7大原则:
开闭、里氏替换、依赖倒置、单一职责、接口隔离、迪米特法、合成复用
面向对象3大特征:
封装、继承、多态
学习完毕感觉设计模式就是面向对象三大特征+面向对象7大原则的一个灵活运用。在学习的过程中,与其说是在学习设计模式,倒不如说是在学习的过程中,让我们对面向对象编程有了一个更加的深刻的学习、把以前的知识点进行了一个更加综合的应用。
设计模式虽然强大,但是他也只是适合一些场景下的有效的一个解决方案, 并不是万能的,不是所有的场合下都适合使用设计模式,有时候可能不用设计模式会比使用设计模式使得程序更加优美。这就需要我们结合自己的业务场景来进行分析了。不管用不用其目的就是为了让我们的程序更加好维护,更加灵活,有利于后期的扩展。
XMind导图:
写在最后:
1、不能信奉代码无错便是优
2、凡事不求完美,只求简单达成目标,是难以提升的
3、编程是门艺术
不管你是什么行业,愿你我都能成为彼此行业里的一个大艺术家~~~
读书应该和吃饭一样,成为生活的必不可少的部分~~~