系统分析与设计 lesson 13

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

  • 软件框架:面向领域(如ERP、计算领域等)的、可复用的“半成品”软件,它实现了该领域的共性部分,并提供了一些定义良好的可变点以保证灵活性和可扩展性。也就是说软件框架是领域分析结果的软件化,是领域内最终应用的模板
  • 软件架构:是系统的草图,是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计,是一个系统的草图,描述的对象是直接构成系统的抽象组件。各个组件之间的连接明确细致的描述组件之间的通讯。
  • 软件架构与框架之间的区别与联系
    1. 框架是软件,而架构不是软件。
    2. 软件框架特定语言和技术的架构应用解决方案。例如 Java Spring web framework,它包含了 Java 开发 web 应用的各种业务场景的具体解决方案。
    3. 软件架构不是软件,而是关于软件如何设计的重要决策。软件架构决策涉及到如何将软件系统分解成不同的部分、各部分之间的静态结构关系和动态交互关系等。经过完整的开发过程之后,这些架构决策将体现在最终开发出的软件系统中;当然,引入软件框架之后,整个开发过程变成了“分两步走”,而架构决策往往会体现在框架之中
    4. 框架是一种或多种架构的组合实现,软件架构是比软件框架高一个抽象等级的概念,软件架构是引导如何设计软件框架的重要决策

2. 以你的项目为案例

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

三层模型由三部分构成:表示层、业务层及持久化层
这里写图片描述

2.2 结合你程序的结构,从程序员角度说明三层架构给开发者带来的便利
  1. 每个层或包的职责是清晰的,模块化并可扩展的。系统分析的每个类会分明确的放置;
  2. 提供了隐式的程序复用准则;
  3. 每个层涉及的技术是明确的。这使得程序员可以通过快速培训上岗;
  4. 通过依赖估计项目变化产生的工作量;
  5. 开发次序和重要性是明确的。领域模型、基础模块(用户和基础数据的DTO和Service必须优先开发与测试),减少这些模块的错误,特别是领域模型设计失误,是项目成功的关键;
  6. 并行开发支持。利用前后端分离,实现并行开发

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

定义:Flux是一种前端状态管理架构思想,专门解决软件的结构问题。基于Flux的设计思想,出现了一批前端状态管理框架。
不同点:
1. Flux数据流的顺序是:
View发起Action -> Action传递到Dispatcher -> Dispatcher 将通知Store -> Store 的状态通知改变View进行改变
2. Vuex数据流的顺序是:
View调用store.commit提交对应的请求到Store中对应的mutation函数 -> store改变(vue检测到数据变化自动渲染)
3. 对比Flux, Vuex新增state角色,代表每个时间点store对应的值,对状态的管理更加明确,把Action细分为Action和mutation,分别对应异步场景和同步场景,并且由于Vuex的自动重新渲染的特性,无需订阅重新渲染函数。
相同点:
Flue是由facebook创建的状态集管理框架,Vuex基于Flux进行了改进,是专门为vue提供的状态管理工具,两者的大致思想一致。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值