描述软件架构与框架之间的区别与联系
区别:
- 架构不是软件,而是关于软件如何设计的重要策略。软件架构决策设计到如何将软件系统分解成不同的部分、各部分之间的静态结构关系和动态交互关系等。经过完整的开发过程之后,这些架构决策将体现在最终开发出的软件系统中。
- 框架是一种特殊的软件,它并不能提供完整无缺的解决方案,而是为你构建解决方案提供良好的基础。框架是半成品。典型地,框架是系统或子系统的半成品;框架中的服务尅被最终应用系统直接调用,而框架中的扩展点是供应用开发人员定制的“可变化点”。
- 架构先全局后局部。框架先通用后专用。架构是问题的抽象解决方案,它关注大局而忽略细节。而框架是通用半成品,还必须根据具体需求进一步定制开发才能变成应用系统。
联系
- 架构决策往往会体现在框架之中,框架技术和架构技术的出现,都是为了解决软件系统日益复杂所带来的困难而分而治之的结果。
以你的项目为案例
绘制三层架构模型图,细致到分区
结合你程序的结构,从程序员角度说明三层架构给开发者带来的便利
- 三层架构具有低耦合性、高重用性、较低的生命周期成本、快速部署、高可维护性、利于软件工程化管理等特性。
- 以我们的项目为例,如果我们要增添一个新的功能(比如后台添加成员管理),三层架构允许我们将任务合理地分配,表示层、业务层、持久化层各自的需求由不同的成员各自同时实现,到最后汇总即可,不会出现一环依赖另一环的情况,大大提高了开发者的工作效率。
研究 VUE 与 Flux 状态管理的异同
异
flux
- 它分为四层:view视图层 action层 dispatcher派发层 store仓库层
- vuex适用于构建大型的项目,如果不是大型项目,使用vuex会使代码更加繁琐
- view——>action——>dispatcher——>store返回——>dispatcher——>view(接收的方法:register())
VUE
- vuex核心: state:存放多个组件共享的状态(数据)
mutations:存放更改state里状态的方法,用于变更状态,是唯一一个更改状态的属性
getters:将state中某个状态进行过滤,然后获取新的状态,类似于vue中的computed
actions:用于调用事件动作,并传递给mutation
modules:主要用来拆分state
- vueComnent——>(dispatch)Action——>(commit)——>Mutations——>(mutate)State——>(render)VueComponent
同
flux
- 状态集管理框架,由facebook创建,专门用来构建前端框架结构的框架,便于维护,用于安全考虑
VUE
- vuex是专门为vue提供的状态管理工具
- 便于维护,保证安全,vue中引入vuex,解决状态之间共享的问题
- 多个组件调用一个状态,将原来组建与组件之间的状态传递改成组件与仓库之间的传递