系统分析与设计(八)

时间:2021-01-13 20:41:42

系统分析与设计(八)

描述软件架构与框架之间的区别与联系

以你的项目为案例,绘制三层架构模型图,细致到分区

结合你程序的结构,从程序员角度说明三层架构给开发者带来的便利

研究 VUE 与 Flux 状态管理的异同

软件架构与框架之间的区别与联系

架构

软件架构就是把系统分解为一些部件,描述这些部件的职责及它们之间的协作行为。

框架

框架是特定语言和技术的架构应用解决方案。

框架是具体语言和技术相关的。

框架是一种或多种架构的组合的实现。

框架是集成了你的代码和多种第三方解决方案的工具,让你聚焦业务逻辑代码而不是技术实现。

区别

架构不是软件,而是关于软件如何设计的重要策略。软件架构决策设计到如何将软件系统分解成不同的部分、各部分之间的静态结构关系和动态交互关系等。经过完整的开发过程之后,这些架构决策将体现在最终开发出的软件系统中。

框架是一种特殊的软件,它并不能提供完整无缺的解决方案,而是为你构建解决方案提供良好的基础。框架是半成品。典型地,框架是系统或子系统的半成品;框架中的服务尅被最终应用系统直接调用,而框架中的扩展点是供应用开发人员定制的“可变化点”。

架构先全局后局部。框架先通用后专用。架构是问题的抽象解决方案,它关注大局而忽略细节。而框架是通用半成品,还必须根据具体需求进一步定制开发才能变成应用系统。

联系

架构决策往往会体现在框架之中,框架技术和架构技术的出现,都是为了解决软件系统日益复杂所带来的困难而分而治之的结果。

绘制三层架构模型图

系统分析与设计(八)系统分析与设计(八)

VUE 与 Flux 状态管理的异同

flux状态集管理分为四层:view视图层,action层,dispatcher派发层,store仓库层。

view——>action——>dispatcher——>store返回——>dispatcher——>view

vuex状态管理核心:

    state:存放多个组件共享的状态(数据)

    mutations:存放更改state里状态的方法,用于变更状态,是唯一一个更改状态的属性

    getters:将state中某个状态进行过滤,然后获取新的状态,类似于vue中的computed

    actions:用于调用事件动作,并传递给mutation

    modules:主要用来拆分state

vueComponent——>(dispatch)Action——>(commit)Mutations——>(mutate)State——>(render)VueComponent

都用store来存储状态,都提供数据驱动的、可组合搭建的视图组件。