zoukankan      html  css  js  c++  java
  • 01-00.设计模式七大原则介绍与说明

    1、设计模式的目的
    在学习设计模式原则前,先简单说一下使用设计模式的目的,但是在说目的前,我们来想一下,为什么要有这么多的设计模式呢?

    是因为在编写软件过程中,程序员面临着怎么去解决耦合性,要怎么去提高内聚性,以及让我们的软件能够具有更好的可维护性,可扩展性,重用性,灵活性等多方面的问题,那么设计模式就是要解决这些问题。

    换言之使用了设计模式,我们的程序就应该松耦合,高内聚以及提高程序的维护性、扩展性、重用性、灵活性。那么问题来了,我们设计模式是为了解决前面提到的这些问题,那么问题就是设计模式为什么要这样去设计呢?他遵循原则是什么?比如说工厂模式,他为什么要这样去设计呢?

    这里面就涉及到我们设计模式本身需要遵守的七个原则(就是设计模式为什么这样设计的依据 ):
    (1)单一职责原则
    (2)接口隔离原则
    (3)依赖倒转(倒置)原则
    (4)里氏替换原则
    (5)开闭原则
    (6)迪米特法则
    (7)合成复用原则
    使用设计模式的目的
    (1)代码重用性(就是相同功能的代码,不用多次编写)
    (2)可读性(就是编程规范性,好的规范性便于其他程序员的阅读和理解)
    (3)可扩展性(就是当需要增加新的功能时,非常的方便,“成本”低,称为可维护)
    (4)可靠性(就是当我们增加新的功能后,对原来的功能没有影响)
    (5)上面的说的四点其实根本的目的就是使程序对外呈现高内聚,低耦合的特性。
    高内聚与低耦合:就是模块内部他们是非常紧密的,但是模块与模块之间或着说功能与功能之间的相互依赖性很低。

    2、设计原则核心思想
    (1)找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。
    (2)针对接口编程,而不是针对实现编程。
    (3)为了交互对象之间的松耦合设计而努力

    3、设计模式应用在软件中哪里?
      面向对象(oo)=>功能模块[设计模式+算法(数据结构)]=>框架[使用到多种设计模式]=>架构 [服务器集群]

    4、UML类图学习(待更新……)

    5、23种设计模式学习(待更新……)

    6、说明:

    内容基于韩顺平老师 《图解Java设计模式》整理与记录,过程中结合自己理解加以描述部分内容。如果你需要转载请说出原文出处,个人总结有不足之处请留言指出稍候修正,当然也欢迎大家一起探讨,欢迎你加入996.ICU……

  • 相关阅读:
    STM32的GPIO工作原理 | 附电路图详细分析
    话说上拉电阻和下拉电阻
    Linux下MySQL数据库常用基本操作
    Linux acpi off学习的必要
    CentOS 6.2出现Disk sda contains BIOS RAID metadata解决方法
    降低开关电源纹波的三个要素
    什么是RFID? 射频识别技术的特点及工作原理!
    亲测可用的国内maven镜像
    Linux 删除文件夹和文件的命令
    [Gradle] 在 Eclipse 下利用 gradle 构建系统
  • 原文地址:https://www.cnblogs.com/pickrecalled/p/14046179.html
Copyright © 2011-2022 走看看