一、概念梳理
系统:由有关联个体组成,根据某种规则运作,完成个别原件不能单独完成的工作的群体。
关键词:
1)关联:系统由一群有关联的个体组成,发动机+底盘+轮胎+车架=一台机车;
2)规则:系统内个体按照指定规则运作,而不是各自为政;
3)能力:系统不是个体能力之和,而是产生了新的能力;
子系统:与系统定义一样,存在观察角度的差异,一个系统可能是另外一个更大系统的子系统;
实例:
微信 = 聊天 + 登录 + 支付 + 朋友圈 等子系统
朋友圈 = 动态、评论、点赞等子系统;
框架:Framework,通常为了实现某个业界标准或完成某个基本任务的软件组件规范;
关键词:
1)框架是组件规范:如MVC,J2EE框架;
2)框架提供基础功能的产品:例如:Spring MVC
架构:Architecture,软件系统的基础架构,创造这些基础结构的准则,及对这些结构的描述。
总结: 架构是顶层设计;框架是面向编程的半成品;组件是从技术维度的复用;模块是从业务维度上职责的划分。系统是相互协同可运行的实体。
二、实例对比(学生管理系统)
学生管理系统的架构:
1)从业务逻辑角度
2)从物理部署的角度:
3)从开发规范的角度:MVC架构