架构整洁之道-设计原则

4 设计原则

  通常来说,要想构建一个好的软件系统,应该从写整洁的代码开始做起。这就是SOLID设计原则所要解决的问题。

  SOLID原则的主要作用就是告诉我们如何将数据和函数组织成为类,以及如何将这些类链接起来成为程序。请注意,这里的“类”并不意味着SOLID原则只适用于面向对象编程,这里的类仅仅代表了一种数据和函数的分组,每个软件都会有自己的分类系统,不管它们各自是不是将其称为“类”,事实上都是SOLID原则的适用领域。

  一般情况下,我们为软件构建中层结构的主要目标如下:

  (1) 使软件可容忍被改动;

  (2) 使软件更容易被理解;

  (3) 构建可在多个软件系统中复用的组件;

  我们这里之所以会使用“中层”这个词,是因为这些设计原则主要适用于那些进行模块级编程的程序员。SOLID原则应该直接紧贴于具体的代码逻辑之上,这些原则是用来帮助我们定义软件架构中的组件和模块的。

  SOLID原则是指:

  (1) 单一职责原则(Single Responsibility Principle,SRP),每个类都应该只有一个引起它变化的原因,换句话说,一个类应该只有一个职责或功能,当需求改变时,会影响这个类的修改只应与该职责相关;

  (2) 开闭原则(Open-Closed Principle,OCP),类模块应该是对扩展开放的(open for extension),对修改关闭的(closed for modification),也就是说,已有的代码在不改动的情况下可以增加新的行为,通过继承和多态来实现新功能的添加而不是修改已有的代码;

  (3) 里氏替换原则(Liskov Substitution Principle,LSP),子类型必须能够替换掉它们的基类型,这意味着任何使用基类型的地方,子类型都可以无缝替代,并且不会导致程序的行为出现错误或异常;

  (4) 接口隔离原则(Interface Segregation Principle,ISP),客户端不应该被迫依赖它们不需要的方法,接口应该小而具体,每个接口代表一种独立的责任或服务,这样可以使系统更松散耦合且更易复用;

  (5) 依赖倒置原则(Dependency Inversion Principle,DIP),高层模块不应该依赖低层模块,二者都应当依赖其抽象,抽象不应依赖细节,细节应当依赖抽象,这个原则强调了依赖于抽象而非具体实现的重要性,通过依赖注入等方式实现,有助于提供代码的可扩展性和可测试性;

4.1 单一职责原则(Single Responsibility Principle)

  S

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值