1、描述软件架构与框架之间的区别与联系
软件架构:指软件体系结构,它一般包括三个部分:构件,用于描述计算;连接器,用于描述构件的连接部分;配置,将构件和连接器组成一个有机整体。
软件框架:是面向某领域(包括业务领域、计算领域)的可复用的“半成品”,它实现了该领域的共性部分,并提供了一系列良好的可变点以保证灵活性和可扩展性。可以说,软件框架是领域分析结果的软件化,是领域内最终应用系统的模板。
区别与联系:
- 呈现形式不同:软件架构的呈现形式是一个设计规约,而框架是程序代码;
- 目的不同:软件架构的首要目的大多是指导一个软件系统的实施与开发;而框架的首要目的是复用。因此,一个框架可有其体系结构,用于指导该框架的开发,反之不然;
- 有一个特殊的架构DSSA(领域特定体系结构),其首要目的也是复用。
- 把体系结构风格用代码实现,如Corba、COM,称为体系结构框架,也叫中间件集成框架。
2、以你的项目为案例
2.1绘制三层架构模型图,细致到分区
2.2结合你程序的结构,从程序员角度说明三层架构给开发者带来的便利
- 开发者可以集中关注某一个部分的任务,从而使分工更加明晰;
- 有效的实现了去耦合,使表示层、业务层与持久化层分离;
- 项目的结构清晰,易于拓展与维护;
- 在架构清晰的基础上,很容易套用现有的框架来实现部分解决方案(代码复用);
- 安全性高。用户端只能通过逻辑层来访问数据层,减少了入口点,把很多危险的系统功能都屏蔽了。
3、研究VUE与Flux状态管理的异同
VUE使用vuex作为状态管理工具
- 使用vuex作为状态管理工具
- vuex便于维护,保证安全,vue中引入vuex,解决状态之间共享的问题。
- 多个组件调用一个状态,将原来组建与组件之间的状态传递改成组件与仓库之间的传递
- vuex适用于构建大型的项目,如果不是大型项目,使用vuex会使代码更加繁琐
Flux:
状态集管理框架,由facebook创建,专门用来构建前端框架结构的框架,便于维护,用于安全考虑。它分为四层:view视图层、action层、dispatcher派发层、store仓库层
view—>action—>dispatcher—>store返回—>dispatcher—>view
异:VUE的状态管理采用的是集中式存储管理,把所有组件的共享状态抽取出来,使用一个store来进行管理,每一个应用只能定义一个store。而在Flux的状态管理中,可以定义有多个store来管理多个组件的状态。
同:VUE和Flux的状态管理都是定义一个store来管理组件的状态,组件不允许直接修改属于 store 实例的 state,而应执行 action 来分发 (dispatch) 事件通知 store 去改变。