SOLID 原则

不管什么技术、行业,大到每一件事物,必然有其规则。在开发领域,每个设计都有一些设计原则,在设计产品时需要遵循这些原则。因此,
设计原则在任何产品交付中都起着至关重要的作用。设计原则帮助团队做出决策。在本文中,我们将了解设计原则 SOLID 。
在这里插入图片描述

设计原则与设计模式

设计原则是一组通用的建议或经过验证的良好编码实践,在做设计选择时,用作经验法则​​。它们与设计模式的概念有点相似。主要区别在于设计原则更加抽象和概括。它们是一种高层次建议,通常适用于许多不同的编程语言甚至不同的范例。
设计模式也是抽象或通用的良好实践,但它们提供了更具体和实用的低层次建议。通常和具体的需求问题相关联,而不仅仅是像设计原则这类广义上的编码实践。

设计原则鼓励我们创建更易于维护、更易理解和更灵活的软件。因此,随着我们的应用程序规模的增长,我们可以降低它们的复杂性,并在以后的持续迭代和维护上为自己省去不必要的重构麻烦,防止代码腐烂!

软件设计不是一次性完成,需要不断在实践中不断改进,才会不断变得完美。另外,您的设计必须能够跟上客户不断变化的需求。

什么是代码腐烂?

当开发人员在不使用结构化设计原则的情况下进行设计开发时,他们可能会导致之后接手该项目的开发人员带来维护困难的问题,并限制他们正在开发的功能难以实现。这些问题通常被称为“代码腐烂”。

如果 您 想在软件的任何升级过程中更改您的程序,您应该避免可能导致代码腐烂的因素在未来 发生 。 因此,您可以使您的软件保持最新状态,人们可以在 未来 几年继续 使用 它。

如何判断代码腐烂?

以下迹象可能表明将来会发生代码腐烂:

  1. 僵化: 小的需求会导致整个系统重建。

  2. 脆弱性: 对一个模块的更改会导致其他不相关的模块运行异常。

  3. 不可重用: 无法在新环境中提取和重用模块的内部组件。例如,如果一个应用程序的登录模块不能在完全不同的系统中使用,那么这个模块是不可移动的,这是由不同模块之间的耦合和依赖引起的。该策略是将公共抽象与具体实现分离,例如特定的数据库模式或 UI 实现(Web、桌面)或特定框架。

  4. 耦合度高:
    当构建和测试难以执行并且执行时间很长时。即使是一个简单的更改也需要很高的成本,并且需要您在多个地方/级别进行更改。

SOLID 设计原则介绍

SOLID 是一个首字母缩写词,代表面向对象设计的五个基本原则。这些原则由 Robert C. Martin(也称为“Uncle Bob”)在 2000 年的论文“设计原则和设计模式”中定义的,这些概念后来由 Michael Feathers 建立。创建它们是为了帮助开发人员创建易于理解、维护和随时间扩展的代码。在过去的 20 多年里,这 5 条原则彻底改变了面向对象编程的世界,改变了我们编写软件的方式。
除了单体应用程序,您还可以将 SOLID 设计原则应用于微服务,您可以将每个微服务视为一个独立的代码模块。
SOLID原则如下:

  1. 单一职责原则(SRP):
    一个类应该只负责一件事。如果一个类有多重职责,它就会变得难以理解和维护。通过让类专注于单一职责,我们可以创建更易于测试、重用和修改的代码。
  2. 开放/封闭原则(OCP):
    一个类应该对扩展开放,对修改关闭。这意味着我们应该能够在不更改其现有代码的情况下向类添加新功能。这通常是通过使用接口和抽象类来实现的。
  3. 里氏替换原则 (LSP):
    子类型必须可替换其父类。这意味着我们应该能够在任何可以使用其父类的地方使用子类。如果一个子类违反了这个原则,它可能会导致我们的代码出现意想不到的行为和错误。
  4. 接口隔离原则(ISP):
    不应该强迫客户依赖他们不使用的接口。这意味着我们应该创建特定于每个客户需求的接口。如果一个接口过于宽泛,它会导致类之间不必要的依赖和耦合。
  5. 依赖倒置原则(DIP):
    高层模块不应该依赖于低层模块。两者都应该依赖于抽象。抽象不应依赖于细节(具体实现)。细节应该依赖于抽象。这意味着我们应该依赖于抽象而不是具体的实现。这使我们能够轻松地换出实现而不影响我们代码的其余部分。

使用 SOLID 设计原则有什么好处?

  1. 在不破坏现有功能的情况下,更容易快速扩展系统的新功能。如果我们随意不遵循设计原则在现有系统实现新功能,它甚至可能会影响现有功能并导致意外问题。

  2. 使代码更易于阅读和理解。因此,花更少的时间弄清楚它的作用。如果我们的代码不遵循 SOLID 设计原则,我们通常会花更多的时间来理解它的作用。SOLID 原则方法可确保您的代码相对更易于阅读和理解。

  3. 使代码更易于维护。

  4. 每个软件/系统都需要不时升级。因此,我们需要在构建应用程序的同时牢记未来变化的可能性。使用 SOLID 原则重构代码非常容易。

  5. 如果我们在代码中应用 SOLID 设计原则,也将保证整体调试过程的简单高效的。

总结

当我们将 SOLID 灵活的运用在我们的设计开发中,我们将更容易管理软件,使我们的软件项目升级更高效,更能快速应对市场和技术的变革,而不被淘汰。因为该设计原则可以避免了代码腐败问题,快速重构我们的代码,可以进行自适应或敏捷软件开发。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值