背景介绍
这是我的《架构整洁之道》系列的第十一篇,从这一篇开始,我们将一起学习组件构建原则~
大型软件系统的构建过程与建筑物修建很类似,都是由一个个小组件组成的。所以,如果说 SOLID 原则是用于指导我们如何将砖块砌成墙与房间的,那么组件构建原则就是用来指导我们如何将这些房间组合成房子的。
在组件构建原则这一章,我们会学习到软件组件是什么,它们由什么元素构成,以及如何利用组件来构建系统。
《架构整洁之道》系列:
组件
组件是软件的部署单元,是整个软件系统在部署过程中可以独立完成部署的最小实体。
例如,对于 Java 来说,它的组件是 jar 文件。而在 Ruby 中,它们是 gem 文件。在.Net 中,它们则是 DLL 文件。
在编译运行语言中:
- 组件是一组二进制文件的集合
而在解释运行语言中:
- 组件则是一组源代码文件的集合
无论采用哪种部署形式,设计良好的组件都应该永远保持可被独立部署的特性,这同时也意味着这些组件应该可以被单独开发。
此处关于组件发展史我因为缺乏某些基础概念且内容比较晦涩,大家可以自行阅读,我就在此略过了
有两个概念分享给大家:
- 程序规模上的墨菲定律:程序的规模会一直不断地增长下去,直到将有限的编译和链接时间填满为止。
- 摩尔定律:计算机的处理速度、内存、存储密度每 18个月会增长 1 倍。 这条定律从 1950 年到 2000 年一直适用,之后在处理速度方面就停滞不前了。
结束语
网络异常,图片无法展示
|
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
少年向来不识天高地厚
放眼处皆自负才高八斗
虽是自命风流
倒也坦诚无忧
我爱这样的少年
谦和而狂妄
骄傲又坦然☀️
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨