【系统分析与设计】作业七

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

架构的具体含义:
架构是有关软件整体结构与组件的抽象描述,用于指导大型软件系统各个方面的设计。

框架的具体含义:
是整个或者部分系统的可复用设计;表现为一组抽象构件及构件实例间交互的方式。结合架构补充,与业务无关的管理决策框架在没有加载业务数据之前,只能称之为框架。

联系:架构的具体实现离不开框架,框架也需要依托架构来填充业务内容。

区别:框架类似一个名词,可以看做一个半成品的软件,虽然它并不能提供完整无缺的解决方案,却可以为你构建解决方案提供良好的基础。而架构不是软件,而是关于软件如何设计的重要策略,是一个抽象出来的解决方案。软件架构决策设计到如何将软件系统分解成不同的部分、各部分之间的静态结构关系和动态交互关系等。

2、以你的项目为案例

  • 绘制三层架构模型图,细致到分区

【系统分析与设计】作业七_第1张图片

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

    三层架构主要的好处就是可以将工作分化成不同的模块,模块之间的耦合度非常低,只需要预先定义好API就可以共同开发整个项目,每个人都只需要完成自己模块的业务逻辑,而不用去考虑其他问题。
    例如在开发的过程中,我们将三层架构分成前后端分离开发,即前端负责表示层,后端负责业务层和持久化层,前后端之间只需要通过API沟通,除此之外没有任何联系。即使是后端开发这个整体,也依然可以划分成不同模块,例如业务层就划分为五六个模块,各模块之间也是没有联系的。通过三层架构,就可以将整个项目抽象成不同的基本模块,开发的逻辑就十分清楚了。

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

Flux将一个应用分为四个部分:

    ①View: 视图层
    ②Action:视图层发出的消息(比如mouseClick)
    ③Dispatcher(派发器):用来接收Actions、执行回调函数
    ④Store(数据层):用来存放应用的状态,一旦发生变动,就提醒Views要更新页面

Flux的数据流顺序:

View发起Action -> Action传递到Dispatcher -> Dispatcher将通知Store -> Store的状态改变通知View进行改变

Vue状态管理核心:

state:存放多个组件共享的状态(数据)
mutations:存放更改state里状态的方法,用于变更状态,是唯一一个更改状态的属性
getters:将state中某个状态进行过滤,然后获取新的状态,类似于vue中的computed
actions:用于调用事件动作,并传递给mutation
modules:主要用来拆分state

Vue的数据流顺序:

View调用store.commit提交对应的请求到Store中对应的mutation函数 -> store改变生成新的state

总的来说,Flux的数据总是”单向流动”,任何相邻的部分都不会发生数据的”双向流动”。这保证了流程的清晰。而Vue的状态管理主要是通过数据共享,来实现状态树中的变化。

你可能感兴趣的:(系统分析与设计)