设计原则

  1. 单一职责原则(如何封装变化)
    就一个类而言, 应该仅有一个引起它变化的原因.
    解读: 这个原则告诉我们一个类应该足够小, 足够简单. 但是开发经验告诉我们, 这个简单的类是很少存在的. 那么如何弥补二者之间的差距呢? 分离职责! 把一个复杂的类切分成几个简单的类, 然后通过委托来组合原有的功能.

  2. 开放封闭原则(如何应对变化)
    软件应该是可扩展的, 但是不可修改的.
    解读:当你升级笔记本硬盘时, 你不是把原有的硬盘打开添加容量, 而是买一个新的硬盘替换, 这就是开闭原则. 我们对于代码的态度也是: 只换不修.
    只换不修需要满足两点:

    1. 独立: 满足单一职责原则. 也就是每一个类足够小, 不与其他类耦合. 如果你换硬盘的时候被告知必须把主板也一起换, 那么更换的成本也太大了.
    2. 实现统一的接口: 当你换完硬盘发现这块硬盘只能写不能读, 那么你也不会满意. 所以硬盘应该实现被换之前的所有的功能. 在Java的世界里, 对外的接口可以用Interface实现.
  3. 里氏替换原则
    子类可以替换父类.
    解读: 里氏替换原则是对开放封闭原则的进一步加强, 开闭原则告诉我们: 在扩展时应该实现相同的接口, 而里氏替换原则告诉我们实现接口时不引起造成副作用. 当你的新硬盘写入数据时会把之前的数据覆盖, 那么我们就不能把它称为硬盘, 尽管它实现了读写接口.

  4. 依赖倒置原则
    细节依赖于抽象.
    解读: 这个原则指导我们要优先使用接口, 而非具体类. 因为具体类是可替换的, 不稳定的. 我们不希望在依赖关系中存在一个不稳定的类.

  5. 接口隔离原则
    这个原则指导我们接口应该小, 简单. 和单一职责原则是相对应的.

设计原则是设计模式的核心, 在学习设计模式之前要做到对设计模式有一定的了解.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值