设计模式学习—设计模式介绍

设计模式学习—设计模式介绍

1、什么是设计模式?

​ 作为开发人员,我们的责任是设计代码,使代码具有灵活性、可维护性可重用性。设计是一门艺术,它伴随着经验而来。但是,在面对和解决类似的设计问题时,一些高级和经验丰富的开发人员已经编写了一些解决方案。这些解决方案称为设计模式。设计模式是设计面向对象代码的经验,设计模式是对常见问题的通用可重用解决方案。这些是经验丰富的开发人员所使用的最佳实践。模式不是完整的代码,但是它可以用作一个模板,可以应用于一个问题。

2、为什么要使用设计模式?

  1. 灵活性:使用设计模式使代码变得灵活。它有助于提供正确的抽象级别,由于对象之间是松散耦合的,所以代码很容易更改。

  2. 可重用性:松散耦合和内聚的对象和类可以使代码更具可重用性。与高度耦合的代码相比,这种代码更易于测试。

  3. 共享词汇表:共享词汇表可以方便地与其他团队成员共享代码和思想。它在与代码相关的团队成员之间创建了更多的理解。

  4. 捕获最佳实践:设计模式捕获已成功应用于问题的解决方案。通过学习这些模式和相关的问题,没有经验的开发人员可以学到很多关于软件设计的知识

    ​ 设计模式使重用成功的设计和体系结构变得更容易。设计模式帮助您选择使系统可重用的设计方案,并避免损害可重用性的方案。简单地说,设计模式帮助设计师更快地“正确”设计。

    3、怎样选择设计模式?

    ​ 有许多设计模式可供选择;要选择一个,你必须对每一个都有很好的了解。有许多设计模式彼此看起来非常相似。它们解决了几乎类似的设计问题,并且具有类似的实现。要为特定的设计问题实现正确的设计模式,必须对它们有非常深刻的理解。首先,您需要确定您所面临的设计问题的类型。设计问题可以分为创造性、结构性或行为性问题。根据这个类别,您可以筛选模式并选择适当的模式。

    模式类型 包括
    创建型模式
    这些设计模式提供了一种在
    创建对象的同时隐藏创建逻
    辑的方式,而不是使用new
    运算符直接实例化对象。这
    使得程序在判断针对某个给
    定实例需要创建哪些对象时
    更加灵活。
    - 工厂模式(Factory Pattern)
    - 抽象工厂模式(Abstract Factory Pattern)
    - 单例模式(Singleton Pattern)
    - 建造者模式(Builder Pattern)
    - 原型模式(Prototype Pattern)
    结构型模式
    这些设计模式关注类和对象
    的组合。继承的概念被用来
    组合接口和定义组合对象获
    得新功能的方式。
    - 适配器模式(Adapter Pattern)
    - 桥接模式(Bridge Pattern)
    - 过滤器模式(Filter、Criteria Pattern)
    - 组合模式(Composite Pattern)
    - 装饰器模式(Decorator Pattern)
    - 外观模式(Facade Pattern)
    - 享元模式(Flyweight Pattern)
    - 代理模式(Proxy Pattern)
    行为型模式
    这些设计模式特别关注对象
    之间的通信。
    - 责任链模式(Chain of Responsibility Pattern)
    - 命令模式(Command Pattern)
    - 解释器模式(Interpreter Pattern)
    - 迭代器模式(Iterator Pattern)
    - 中介者模式(Mediator Pattern)
    - 备忘录模式(Memento Pattern)
    - 观察者模式(Observer Pattern)
    - 状态模式(State Pattern)
    - 空对象模式(Null Object Pattern)
    - 策略模式(Strategy Pattern)
    - 模板模式(Template Pattern)
    - 访问者模式(Visitor Pattern)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,744评论 6 502
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,505评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,105评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,242评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,269评论 6 389
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,215评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,096评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,939评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,354评论 1 311
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,573评论 2 333
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,745评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,448评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,048评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,683评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,838评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,776评论 2 369
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,652评论 2 354