01- 架构的定义
什么是架构?
软件架构是有关软件整体结构和组件的抽象描述与结构性规划
系统
泛指由一群有关联的个体组成,根据某种规则运作,能完成个别元件不能单独完成的工作的群体。她的意思是”总体”,“整体” 或 “联盟”
子系统
由一群有关联的个体所组成的系统,多半会是更大系统中的一部分。
模块
模块是一套一致而互相有紧密关连的软件组织。它分别包含了程序和数据结构两部分。现代软件开发往往利用模块作为合成的单位。模块的接口表达了由该模块提供的功能和调用它时所需的元素。模块是可能分开被编写的单位。这使它们可再用和允许人员同时协作、编写及研究不同的模块。
组件
自包含的、可编程的、可重用的、与语言无关的软件单元,软件组件可以很容易被用于组装应用程序中。
4R 架构(Rank + Role + Relation + Rule)
软件架构指软件系统的顶层结构(Rank),它定义了系统由哪些角色(Role)组成,角色之间的关系
(Relation)和运作规则(Rule)
Rank: 微信是一层,它包括朋友圈,朋友圈又包含评论,动态,评论又包括防刷、审核。
Role:系统是由很多角色组成的。
Relation: 角色之间是有关系的。
Rule: 角色如何协作来完成系统的功能。
评论