1.1 什么是架构
系统与子系统
【系统】
泛指由一群有关联的个体组成,根据某种规则运作,能完成个别元件不能单独完成的工作的群体。它的意思是
“总体”、“整体”或“联盟”。
-- 来自《维基百科》
【子系统】
由一群有关联的个体所组成的系统,多半会是更大系统中的一部分。
-- 来自《维基百科》
模块与组件
【软件模块(Module)】
是一套一致而互相有紧密关连的软件组织。它分别包含了程序和数据结构两部分。现代软件开发往往利用模块作为合成的单位。模块的接口表达了由该模块提供的功能和调用它时所需的元素。模块是可能分开被编写的单位。这使它们可再用和允许人员同时协作、编写及研究不同的模块。
-- 来自《维基百科》
【软件组件(Component)】
自包含的、可编程的、可重用的、与语言无关的软件单元,软件组件可以很容易被用于组装应用程序中。
-- 来自《维基百科》
举例:
框架和架构
【软件框架(Software Framework)】
通常指的是为了实现某个业界标准或完成特定基本任务的软件组件规范,也指为了实现某个软件组件规范时,提供规范所要求之基础功能的软件产品。
-- 来自《维基百科》
【软件架构(Software Architecture)】
指软件系统的“基础结构”,创造这些基础结构的准则,以及对这些结构的描述。
-- 来自《维基百科》
架构定义
4R 架构 - Rank + Role + Relation + Rule
分层: 自顶向下, 逐步细化
角色: 对应于系统中的个体, 各自所属职责
关系: 角色交互方式, 联系, 交互实现
规则: 如何协作实现功能
版权声明: 本文为 InfoQ 作者【Lemon】的原创文章。
原文链接:【http://xie.infoq.cn/article/4d9d36877a0c47c58a7ea0597】。文章转载请联系作者。
评论