系统分析与设计 lesson13
描述软件架构与框架之间的区别与联系
- 区别
软件框架:软件框架描述了该领域的共性部分,并提供了一些定义良好的可变点以保证灵活性和可扩展性。软件框架是领域分析结果的软件化,领域内最终应用的模板。
- 联系
框架技术和架构技术都是通过分治的方法解决软件系统日益复杂所带来的困难。
以你的项目为案例
- 绘制三层架构模型图,细致到分区
- 结合你程序的结构,从程序员角度说明三层架构给开发者带来的便利
研究 Vue 与 Flux 状态管理的异同
- Vue
Vue的状态管理是通过Vuex处理的。Vuex通过store对实例的数据进行保存,在store中包含共享的状态state以及改变状态的方法mutations。通过getters把需要共享的数据进行包装然后共享。mutations是同步更改状态,异步的方法为actions,不过actions提交的同样是mutations。
- Flux
View 发出 Action,然后Dispatcher 收到 Action,要求 Store 进行相应的更新,在Store 更新后,发出一个"change"事件,View 收到"change"事件后,更新页面。整个过程的数据流是单向的,防止同一份数据被多个地方同时写造成混乱。
- Vue 与 Flux 状态管理的区别
- 数据流
Flux的数据流为View 发出 Action,然后Dispatcher 收到 Action,要求 Store 进行相应的更新,在Store 更新后,发出一个"change"事件,View 收到"change"事件后,进行更新。
Vuex的数据流为View调用commit(同步)或者dispatch(异步)方法提交对应的请求到Store中,然后调用对应的mutation函数对store进行更改并生成新的state,然后自动渲染。
- Flux数据改变需要对view进行更新,而Vuex有自动渲染的功能不需要更新。
- Vue 与 Flux 状态管理的相同
- 两者的数据流都是单向的,这样所有的状态变化都可以留下记录,方便利用这个来做各种 debug 工具、历史回滚等等。
- 两者都是通过store进行数据、状态的存储。