学习架构之基本概念

1. 前提:

      我们学习架构之前,应该对一些基础名词有相关的概念,这样更有利于我们后面的学习。

2. 基础名词介绍

      系统:系统有多个个体组成,个体有自己独立的功能,然后这些个体通过一定的规则去运行,从而产生新的功能。

      子系统:子系统其实就是系统更小的单位,例如微信是一个大的系统,可以分为聊天子系统,支付子系统,朋友圈子系统等

      组件和模块:组件和模块都是系统中的基本单位(不可再分),只不过是从不同的角度来分,例如聊天子系统,从逻辑的角度可以包括发送模块,接收模块,存储模块等等模块,而实现该具体模块的我们可以通过redis,mysql等组件来实现的,组件是可插卸的,例如我现在存储模块是用redis来实现,但我可以把他换成mongodb,而模块只是一个逻辑上的东西,说白了就是一堆代码。

       框架:一组规范,可以看成是一个系统的半完成品,有一定的功能,但我们想要实现功能还要基于它来开发,例如Springboot就是一个框架,但是他里面包括了很多的注释可以提供我们使用,我们进行系统实现的时候需要根据他的规范来走,有很多人说自己编写框架,其实就是自己来编写开发的规范。

      架构设计:架构设计是从一个顶层的视角来看系统,是一个动词,而且可以根据不同的角度来看,例如我们来看一个学生管理系统,1.从逻辑的角度来看可以分为注册模块,登录模块,查成绩模块并且这些模块是如何进行交互的,2.从物理的角度来看就是请求从ngnix服务器负载均衡到某一个tomcat服务器上,然后tomcat服务器再访问mysql服务器,3.如果从开发规范来看可以看成这是一个mvc架构(自动脑补mvc是如何进行通讯的)。

      框架和架构的不同:框架是一种规范,是封闭的,是具体的,我们可以在springboot,dubbo框架上实现我们的系统或者子系统,但是我们要根据他的规范来走,而架构是开放的,是抽象的,总的来说就是架构是思想,而框架就是用来实现思想的

    

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章