设计模式全家桶

前言:笔者在最初写程序的时候,常会遇到一些状况。 例如:更改一个字段或者添加一种小功能,就要把原来写过的东西废弃,重新大量更改以前写过的代码; 回顾很久以前编写的代码,完全找不到当时为什么这么写的原因; 遇到了Bug,更是无法快速定位问题所在。
当你也遇到这类问题,就说明现阶段急需学习设计模式了

网上通常说的设计模式有23种,也有一些相关设计模式的变种。如果让笔者来形容什么是设计模式,我认为设计模式是:一种套路,一种模式,一种思想,一种解决问题的高效策略

举个简单的列子:从A点到B点,有多种线路可供选择,每种线路都有自己的优缺点。如何基于需求选择适合自己的线路?通过运用设计模式这种思想,可以提供最优策略。


如有任何疑问可加QQ群:280873802,笔者看到会第一时间回复。



设计模式准则

设计模式之面向对象七大原则

一、创建型模式

创建型设计模式:不是直接使用 new 运算符实例化对象,而是一种创建对象的同时隐藏创建细节的方式。这使得程序在创建指定对象时更加灵活。

1.1.设计模式之简单工厂:构建的简单转移
1.2.设计模式之工厂方法:单个构建的转移
1.3.设计模式之抽象工厂:一套构建的转移
1.4.设计模式之原型模式:自身分裂与复制
1.5.设计模式之建造者模式:复杂装配流程的关注
1.6.设计模式之单例模式:独一无二


二、结构型模式

结构型设计模式:关注类和对象的组合。继承的概念被接口和组合对象所代替,使之获得新功能的方式。

2.1.设计模式之适配器模式:追求统一的补丁
2.2.设计模式之桥接模式:产品标准的制定
2.3.设计模式之装饰器模式:功能的动态添加
2.4.设计模式之组合模式:领导与跟随
2.5.设计模式之享元模式:共享
2.6.设计模式之代理模式:权限的控制
2.7.设计模式之门面模式:引导菜单

三、行为型模式

行为型设计模式:主要关注对象之间的通信。

3.1.设计模式之责任链模式:请求的传递
3.2.设计模式之状态模式:变身
3.3.设计模式之命令模式:布置与实行
3.4.设计模式之迭代器模式:A = A+1;
3.5.设计模式之中介者模式:中转站
3.6.设计模式之备忘录模式:版本控制
3.7.设计模式之策略模式:多策略跳转
3.8.设计模式之观察者模式:订阅喜欢的频道
3.9.设计模式之访问者模式:操作剥离与重新整合
3.10.设计模式之模板方法模式:按步骤执行
3.11.设计模式之解释器模式:转换与翻译

总结:

前前后后用了3个多月,终于把新版的设计模式写完了。当初打算重写设计模式是因为离职,有了较长时间可以整理学习,就萌发出重新写一套设计模式的想法。希望【设计模式全家】能够给大家带来帮助。

在不断学习的过程中,笔者发现能快速进步必须要有的四要素:

  • 优秀的学习资料
  • 适合自己的学习方法
  • 对掌握知识的归纳总结(笔者用写博客的形式费曼学习法
  • 每天前进一小步

主要参考相关链接

《设计模式全家桶》有1条评论

发表评论