SOLID设计原则

由五个英文单词首字母组成,分别代表了五个不同的设计理念。

  • 单一职责原则
  • 开放封闭原则
  • 里氏替换原则
  • 接口隔离原则
  • 依赖倒置原则
1. 单一职责原则

每个类应该只有一个引起变化的原因,也就是说一个类应该只承担一项职责。

当一个类承担过多的职责,尤其是当它还拥有复杂的内部状态时,修改一个功能可能会影响到内部状态。

这种内部状态的变化往往会引起连锁反应,从而意外地影响其他功能。

这意味着如果一个类承担的职责过多,它的复杂性会增加,这将导致它的可维护性,可复用性和可扩展性都下降。

2. 开放封闭原则

开放封闭原则的核心在于软件实体(如类、模块和方法等)应该对扩展开放,对修改封闭。

这意味着我们可以通过扩展来增加功能,而无需修改现有的代码。

这一原则为什么至关重要,因为它允许我们在不破坏现有系统的基础上增加新功能。

在软件系统需要发展和扩展新功能时,遵循这一原则可以最大限度地减少对现有代码的修改。

这不仅减少了错误的风险,还能提升系统的整体稳定性。

3. 里氏替换原则

其核心思想是子类应该能替换它们的基类,且不改变程序的执行结果。

这意味着子类的对象应该能在程序中代替其父类对象,而不引起任何错误或异常。

它确保了继承机制的正确性,当我们使用继承时,通常目的是为了代码复用。

然而如果继承使用不当,很容易使得子类和父类的行为不一致。

4. 接口隔离原则

一个类不应该被迫依赖于它不需要的接口,也就是说,一个类应该仅实现它真正需要的接口中的方法 。

这个原则的目的在于将大的接口分解成更小的和更具体的接口,这样类就可以只关注它们需要的接口,避免实现不必要或无用的功能。

从而减少系统的耦合度,增加代码的可维护性和灵活性。

5. 依赖倒置原则

这一原则主张两个核心观点:

  • 高层模块不应该依赖于低层模块,它们都应该依赖于抽象。
  • 抽象不应依赖于细节,而细节应依赖于抽象。

依赖倒置原则旨在通过引入抽象层来减少高层类与低层类之间的直接依赖。

这种方法不仅增加了代码的可维护性,还提高了系统的灵活性。

因为高层模块不再依赖于低层模块的具体实现,系统因此可以更容易适应变化。

订阅评论
提醒
0 评论
最旧
最新 最多投票
内联反馈
查看所有评论
滚动至顶部