系统分析与设计 Homework(lesson 13)
系统分析与设计 Homework(lesson 13)
1. 描述软件架构与框架之间的区别与联系
- 软件架构是软件系统组织的一系列重要的决策,它描述了系统组成的结构元素以及相应接口的选择,和这些元素在协作中特定的行为。
- 框架是特定语言和技术的架构应用解决方案。是具体语言和技术相关的。框架集成了代码和多种第三方解决方案的工具,使其聚焦业务逻辑代码。
- 区别
- 两者聚焦的方面不同
- 架构聚焦在技术实现
- 框架聚焦在业务逻辑
- 两者解决的问题不同
- 架构提供问题的一般解决方案,注重大局
- 框架提供具体问题的具体方案,根据不同的需求得到不同的框架
- 两者的目的不同
- 架构是普遍软件系统的实施和开发
- 框架是为了让开发人员能够复用框架得到相应的应用
- 两者聚焦的方面不同
- 联系
- 框架是一种或多种架构的组合的实现
- 架构决策往往会体现在框架之中
- 两者都是为了解决软件系统日益复杂所带来的困难而分而治之的结果
2. 以你的项目为案例
- 绘制三层架构模型图,细致到分区
- 结合你程序的结构,从程序员角度说明三层架构给开发者带来的便利
- 并行开发支持,利用前后端分离,实现并行开发
- 每个层或包的职责是清晰的,模块化并可扩展的
- 程序的结构化分层,使得不同的开发人员只需主要关注结构中相应的某一层
- 项目结构更清楚,有利于后期的维护和升级
- 可容易地用新的实现来替换原有层次的实现
3. 研究 VUE 与 Flux 状态管理的异同
VUE是一种用于构建用户界面的渐进式框架
Flux 是一种架构思想,专门解决软件的结构问题
- 相同点
- 采用了相同的状态管理思想,都是通过store来存储状态
- 提供数据驱动、可组合搭建的视图组件
- 视图与控制层分离
- 集中式状态管理
- 便于维护
- 不同点
- 数据流的顺序不同
- Flux数据流的顺序是
- View发起Action
- Action传递到Dispatcher
- Dispatcher将通知Store
- Store的状态改变通知View进行改变
- VUE数据流的顺序是
- View调用store.commit提交对应的请求到Store中对应的mutation函数
- store改变(vue检测到数据变化自动渲染)
- Flux数据流的顺序是
- 同步与异步操作的处理不同
- Flux是view->action->dispatcher->store->dispatcher->view,同步和异步采取同样的处理
- VUE采取不同的处理方法
- 同步:view->commit->mutations->state->view
- 异步:view->dispatch->actions->mutations->state->view
- 数据流的顺序不同