看到掘金的30天发文连更挑战,想试试自己到底可以连续坚持几天,奖品不奖品的不重要,重在参与吗?
接下来的30天里,我将带领大家一起学习设计模式,以前总觉得设计模式很复杂,在一般的常规编程中很少使用到,仔细阅读后发现,之前的想法是多么无知。如果一个编程人员想提升自己,想让自己更加值钱,那么代码规范,设计模式这些术层面的知识点也是需要了解和掌握的。

其实在日常的开发中,我们或多或少都会使用到设计模式,只是大家不太清楚而已。比如我们经常使用到的单例模式,工厂模式等。

楼主主要从事c#开发,程序中举例的代码使用c#。

设计模式总览

(抽象、封装、继承、多态)是面向对象(oo)的基本概念,oo原则时我们的目标,设计模式是我们的做法。

设计模式总共有23种,从大的结构上进行划分,可分为3大类,依次是创建型模式、结构型模式、行为模式。

创建型模式

这类模式是创建对象的机制,可以提升已有代码的灵活性和可服用性。

  • 生成器
  • 原型
  • 单例

结构型模式

介绍如何将对象和类组装成较大的结构,并同时保持结构的灵活和高效。

  • 适配器
  • 桥接
  • 组合
  • 装饰
  • 外观
  • 享元
  • 代理

行为模式

这类模式负责对象间的高效沟通和职责委派。

  • 责任链
  • 命令
  • 迭代器
  • 中介者
  • 备忘录
  • 观察者
  • 状态
  • 策略
  • 模版方法
  • 访问者

如果你只有一把铁锤,那么任何东西看上去都像钉子。那么我们要努力让自己手里拥有多个铁锤。

最基础的,底层的模式通常被称为惯用技巧,这类模式一般只能在一种编程语言中使用。

最通用的,高层的模式是架构模式,我们可以在任何编程语言中使用这类模式,与其他模式不同,它们可用于整个应用程序的架构设计。

小寄语

一个人的奋斗,像怀孕一样,日子久了,总会被看出来的。

人生短暂,我不想去追求自己看不见的,我只想抓住我能看的见的。

我是哉说,感谢您的阅读,如果对你有帮助,麻烦点赞,转发 谢谢。