系统设计

本章介绍天翼对讲 V2.0 版本的系统设计, 首先阐述目前版本存在的问题与新版本中的改进点;最后阐述新版本的系统结构和模块划分等设计思想。

目前版本存在的问题

  1. 功能代码散落在工程的各个位置,不利于后期改动与维护;

  2. 界面与业务逻辑耦合严重,修改业务逻辑时改动位置个数和改动量都会增加;

  3. 代码与高通 ADK 逻辑联系紧密,增加或修改功能极易造成不易察觉的问题;

  4. 能力调用没有相关限制,可能被滥用;

  5. 代码风格不统一且格式没有规范,造成后续维护的难度提升;

  6. 服务器端功能较弱,完全依赖高通服务器,对后续新功能开发不利;

天翼对讲 V2.0 主要改进点

天翼对讲 V2.0 版本相对于 1.x 版本,主要有以下几个部分的改进: 优化底层程序结构,改进程序逻辑,增强稳定性;通过对通用库的改写,增强灵活性; 将界面与业务逻辑分离,减少耦合性;增加能力调用鉴权机制,增强安全性; 严格编码规范,增强维护性;实现推送机制,增强交互性。

应用 SDK 进行底层逻辑改写

这是天翼对讲 V2.0 版本最大的改变, 整个工程使用能力封装 SDK 进行重新改写,将原先散落于项目中的功能代码集中管理, 不仅能够增加稳定性,还可以改进开发效率,同时有助于快速定位系统错误, 减少 BUG 修复时间等。

对通用类库等的改写

  • 网络基础库

  • 设备信息库

  • 日志库

将界面与业务逻辑分离

这是天翼对讲 V2.0 版本另一个重要的改变, 通过应用 MVP 模式,解耦界面与业务逻辑,可以更好的应对需求变化, 通过有效地分层与模块化,更好的将工作分解,从而进行专业化分工合作; 同时能减少变更时各层之间的影响;简化自动化测试用例的编写等。

增加能力调用鉴权机制

防止服务滥用。

统一代码风格,严格要求编码规范

在编码规范上可以使用相关技术手段进行限制,比如自动检查机制等; 在代码管理的分支和提交上也同样制定相关规范,如代码 review 机制,git-flow 工作流机制等。

实现消息推送机制

应用 MQTT 协议,实现消息推送机制,为后续的通知、定位等功能打好基础。