1. 前提:
我们学习架构之前,应该对一些基础名词有相关的概念,这样更有利于我们后面的学习。
2. 基础名词介绍
系统:系统有多个个体组成,个体有自己独立的功能,然后这些个体通过一定的规则去运行,从而产生新的功能。
子系统:子系统其实就是系统更小的单位,例如微信是一个大的系统,可以分为聊天子系统,支付子系统,朋友圈子系统等
组件和模块:组件和模块都是系统中的基本单位(不可再分),只不过是从不同的角度来分,例如聊天子系统,从逻辑的角度可以包括发送模块,接收模块,存储模块等等模块,而实现该具体模块的我们可以通过redis,mysql等组件来实现的,组件是可插卸的,例如我现在存储模块是用redis来实现,但我可以把他换成mongodb,而模块只是一个逻辑上的东西,说白了就是一堆代码。
框架:一组规范,可以看成是一个系统的半完成品,有一定的功能,但我们想要实现功能还要基于它来开发,例如Springboot就是一个框架,但是他里面包括了很多的注释可以提供我们使用,我们进行系统实现的时候需要根据他的规范来走,有很多人说自己编写框架,其实就是自己来编写开发的规范。
架构设计:架构设计是从一个顶层的视角来看系统,是一个动词,而且可以根据不同的角度来看&