架构是顶层设计;框架是面向编程或配置的半成品;组件是从技术维度上的复用;模块是从业务维度上职责的划分;系统是相互协同可运行的实体。
我们要做的东西都能抽象为一个系统,架构既可做动词也可做名词,作为动词就代表系统的设计,作为名词就代表系统的表现形式。
所以架构首先继承了系统的属性:
0、系统整体有价值
1、由多个有关系的个体组成
2、涌现,整体大于个体之和,也就是文中说的“流”出来的新的价值
系统的架构从无到有由人来执行,所以也具备人思考和交流的属性:
0、思维带宽较小,不能同时考虑很多事情,需要把系统做分解(模块和组件)
1、线性思想和交流,多维关系要降级到二维关系(4+1视图等多种方法论)
2、人作为个体的个性化-也即多样性,架构没用统一标准,适合自己/团队/公司最重要。
系统与子系统:系统是由一系列有关联,按特定规则组成的个体,并且产生新的能力,而系统与子系统则是观察的交角度不同
模块与组件:模块是从逻辑角度去看待,而组件是从物理角度去看待
框架与架构:框架是规范也是约束,可以理解为封闭性的话题,定义好,让别人如何去使用,而架构是一种结构,是一种开放性的话题,如何去设计组织架构,如何让架构更具有拓展性,减少沟通错误成本
框架和架构其实不一定有什么关联关系。架构是为了实现某个功能而设计的一种结构方式。虽然架构一词高大上,但你只要实现了自己的功能,你的结构就是架构。有了架构,你就有了工作的思路和方向。框架是实现功能的一种规范,你必须在这种规范下工作。注意,定义中说框架是定义组建的规范,所以框架里面不一定非得有组建和模块。
模块是从职责划分的角度来观察,实现某个功能的职责,称之为模块。比如登陆模块。要实现的某个功能,我们一般称之为模块。
组件的本质是可以独立实现某项功能的零件。它的特点是独立,可替换
组件与模块的区别是,组件可能是为了实现模块而实现的。但是实现功能的模块不能称为组件。
架构的本质是什么 架构的作用是什么
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Linux下的权限是什么?shell运行原理 Linux的用户分类 Linux中权限 粘滞位 遮掩码umask
-
SNAT的作用是什么ip地址 源地址