转载

架构 -- 概念

  1. 系统:由一群 有关联 的个体组成,根据某种 规则 运作,能完成个别元件不能单独完成的工作的群体(体现 系统能力
  2. 子系统:由一群 有关联 的个体所组成的系统,多半会是 更大系统中的一部分
  3. 子系统的定义和系统的定义是一致的,只是 观察的角度 有差异

模块 / 组件

  1. 模块( Module )和组件( Component )都是系统的 组成部分 ,只是 从不同的角度来拆分系统
  2. 逻辑角度 来拆分系统,得到的单元是 模块 ;从 物理角度 来拆分系统,得到的单元是 组件
  3. 划分 模块 的主要目的是 职责分离 ,划分 组件 的主要目的是 单元复用
  4. 样例:学生信息管理系统
    • 逻辑角度:登录注册模块、个人信息模块、个人成绩模块
    • 物理角度:Nginx、Tomcat、MySQL

框架 / 架构

  1. 框架( Framework
    • 框架是 组件规范 ,如MVC是常见的开发规范
    • 框架是 提供基础功能的产品 ,如Spring MVC是MVC开发框架
      • 除了满足MVC的规范外,Spring还提供了很多基础功能(Spring Security,Spring JPA等)
  2. 架构( Architecture
    • 架构是软件系统的 基础结构 ,创建这些基础结构的准则,以及对这些结构的描述
    • 但基础结构这个概念,并没有明确说从什么角度来分解,采用不同的角度或者维度,可以将系统划分为不同的结构
      • 逻辑角度(模块)、物理角度(组件)、开发规范角度(MVC框架)
      • 架构蓝图–软件架构 “4+1” 视图模型
  3. 框架关注的是 规范 ,而架构关注的是 结构
原文  http://zhongmingmao.me/2019/08/11/architecture-concept/
正文到此结束
Loading...