SOLID架构设计原则和适用领域

一般来说,如果你想构建一个好的软件系统,你应该从编写整洁的代码开始。毕竟,如果建筑中使用的砖质量不好,框架可以发挥的作用就非常有限。相反,如果一个建筑的建筑设计不好,用质量好的砖是没有用的。这是SOLID设计原理要解决的问题。

SOLID原理的主要功能是告诉我们如何将数据和函数组织成类,以及如何将这些类链接成程序。请注意,虽然这里使用了“类”这个词,但这并不意味着我们将要讨论的设计原则只适用于面向对象编程。这里的类只代表一组数据和函数,每个软件系统都会有自己的分类体系,不管他们是否称之为“类”,其实都是SOLID原理的适用领域。
总的来说,我们为软件构建一个中间层结构的主要目标如下:

让软件容忍被更改

使软件更容易理解

构建可在多个软件系统中重用的组件

之所以在这里用“中间层”这个词,是因为这些设计原则主要适用于做模块级编程的程序员。SO-and-D原理应该直接依附于具体的代码逻辑。这些原则用于帮助我们定义软件架构中的组件和模块。

当然,就像建筑是用好砖建造的一样,使用设计良好的中层组件并不能保证系统的整体结构良好工作。正因为如此,我们在讲完SOLID原理之后,还会继续深入讨论组件的设计原理,并把它们推向高级软件架构。

固体原理有着悠久的历史。早在80年代后期,当我在USENET新闻组(当时相当于今天的Facebook)上和其他人辩论软件设计理念的时候,设计原则就开始逐渐成型。随着时间的推移,一些原则被修改,一些被放弃,一些被合并,一些被增加。它们的最终形式是在2000年左右形成的,但在那个时候,它们是以另一种顺序出现的。

大约在2004年,迈克尔·费哲的一封邮件提醒我,如果这些设计原则被重新排列,它们的首字母可以被排列成固体——这就是固体原则诞生的故事。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值