应用管理详细设计

目录

因为详细设计文档在内网里,所以复制了一份出来

1. 相关人员

  • 设计人员:王耀

2. 需求背景

  • 需按照共享平台和101教育平台的规范进行设计与开发
  • 应用管理组件,主要是将社区和学习空间中的应用管理部分抽离出来,兼容后生成的组件,此后当其他项目中需要使用此组件,开发人员可以简单快捷地接入。
  • 具备独立或者与其他组件同打包成为可用产品的能力。

3. 设计决策

3.1 组件设计

  • 复用应用管理相关能力,节省开发维护成本,提供组件利用率。
  • 独立提供应用管理和编辑的展示页面,使用工厂CMP方式启动,简化外部对接复杂度。
  • 暴露请求接口,对外提供相关应用数据获取。

3.2 代码设计

  • 使用状态模式,将“普通”、“编辑”状态抽象出来,便于更好的管理和扩展各种状态,提升扩展性;将复杂的逻辑判断(判断当前状态从而展示不同视图、不同行为)剔除,统一写到相关状态类中,使得代码可阅读性大大增强,可维护性也充分提升

4. UML图

4.1 用例图

4.1.1 接入方

在这里插入图片描述

4.1.2 用户

在这里插入图片描述

4.2 类图

4.2.1 状态模式部分类图

在这里插入图片描述

4.2.2 整体类图

在这里插入图片描述

4.3 时序图

在这里插入图片描述

4.4 状态图

在这里插入图片描述

5. 设计理由

5.1 使用状态模式理由

  • 根据状态模式定义可知,其应用场景是在一个对象本身的状态改变时,改变它的行为。
    而“应用管理对象”本身拥有“编辑”、“普通”两种状态,我们需要在切换不同状态的情况下,改变它的行为,因此可以使用状态模式。
  • 其UML图结构与策略模式非常相似,这里不适用策略模式的理由是,策略模式的策略可以由外部决定,而状态模式的状态是对象内部自己拥有的,无法由外部更改。

5.2 整体设计理由

  • 运用面向对象思想,为常用应用以及分组应用分别创造一个类,负责管理常用、分组应用相关的所有行为和属性。
  • 维护应用级别状态管理类(static),管理常用应用是否已满、是否是编辑模式等状态。
  • 运用状态模式,管理“普通”、“编辑”两种不同状态,使代码易维护、易扩展,同时增加可读性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值