移动端应用系统架构设计研究
2016-10-21董国正
董国正
摘 要:随着移动应用技术的广泛应用,系统架构设计为实现一套有针对性功能且具有高性能、易于扩展、具有一定程度上的可复用性等特性的移动APP提供了重要保证,为改善公司软件质量,降低软件开发和维护成本,缩短软件开发工期,提高软件重用率,为公司发展奠定了技术基础,该文描述了其中一种符合上述特性的架构设计理念。
关键词:架构 设计 移动端
中图分类号:TP311 文献标识码:A 文章编号:1674-098X(2016)03(b)-0017-02
1 概述
1.1 目的
为改善公司软件质量,降低软件开发和维护成本,缩短软件开发工期,提高软件重用率,促使公司软件开发和项目管理水平更上一层楼,形成具有行业特色的技术体系和企业标准,为公司发展奠定技术基础,研究、探索、建立该开发规范(以下简称规范)。
该规范实施后,公司所有的软件产品、定制软件开发和软件维护项目必须严格执行。
1.2 原则
1.2.1 简单、有效
软件应用架构、数据处理过程和交互界面力求简单、清晰和有效,不过多追求新技术和技巧的应用。
1.2.2 标准、可重用
應用架构、数据处理过程和交互界面标准、规范和可重用是必须坚持的原则。严格划分业务相关和业务无关部分,业务无关部分必须实现标准化。
1.2.3 业务边界明确
明确软件功能的业务边界。严禁业务边界不清晰,越界操作数据,不同业务混合的情况出现。各不同边界之间的数据交换可通过标准接口进行操作;要绝对保证离开业务边界数据的合法性和合理性,严禁非法和冗余数据进入下一个业务边界。
1.2.4 数据处理后台化
严禁在客户端进行数据处理。一般情况下,采用后台数据库存储过程进行数据处理;特殊情况下,可采用引擎进行数据处理。
2 架构规范
安卓开发架构总体分为基础框架和系统业务两大部分,(见图1)。
其中基础框架包含公共访问类(如:数据库操作接口、数据库操作实现类、网络提交封装类)、工具类(如:文件访问工具类、二维码扫描工具类)、框架基础配置文件和其他第三方工具类等内容,框架部分可持续扩展功能封装类,供系统业务模块调用。
系统业务中将具体系统的每个业务模块拆分成独立包,并严格采用简单三层应用架构,既展现层、业务逻辑层和数据操作层,各层之间界限清晰(见图2)。
3 开发框架规范详细说明
3.1 UI展现层规范
3.1.1 规范说明
展现层进行数据展示、数据采集、数据合理性和合法性校验操作。
(1)数据的合法性指数据表示对象属性对数据类型的限制;而数据合理性指具体业务对数据取值范围的限制。
(2)一般情况下,数据的合理性在{提交|保存|确定}按钮的点击事件中处理,而数据的合法性在数据输入域焦点离开时进行校验。
3.1.2、规范详细
UI界面所对应的java实现类中,只包含如下及部分内容:变量定义、初始化控件、事件绑定、调用接口和更新UI五部分。
(1)变量定义。
定义界面控件或其他成员变量。
(2)初始化控件。
初始化界面控件。
(3)事件绑定。
为界面控件绑定事件。
(4)调用接口。
设置接口参数:传递数据、解析方法名称(业务层的实现方法)、更新UI的方法。
(5)更新UI。
根据接口返回的数据更新UI界面。
3.2 业务控制层规范
3.2.1 规范说明
业务逻辑层为,定义解析接口数据的逻辑方法,向上返回解析后的Bean数据,每个业务模块定义自己的业务类。
3.2.2 规范详细
各个模块业务类继承BaseService类,并重写getBean方法,并在类中定义本模块的解析方法。
3.3 数据操作层规范
3.3.1 规范说明
数据操作层包含:数据表映射对象(bean)、数据库操作公共类和数据库表基础(增、删、该、查)操作方法、SQL语句执行方法、以功能调用的方式向业务逻辑层提供数据操作服务。
3.3.2 规范详细
(1)SQL构造类。
对应表字段生成SQL构造类SqlBuilder,继承基础抽象类ATableBase,并初始化表名与列集合。
(2)SQL控制类。
对应表字段生成SQL控制类,重写增、删、改、查方法。
(3)前台调用。
4 基础规范
基础操作是指应用软件中基本的操作过程,包括启动、登录和更新3个过程,具体描述如下。
4.1 启动
App启动后,首先判断是否启动欢迎页,在进入登录页之前,将推送等第三方服务进行注册。
4.2 登录
(1)判断当前是否已连接网络,如果网络已连接则可进行登录接口。
(2)记录是否为第一次登录,用于判断是否启动欢迎页。
(3)判断是否保存登录密码,是否下次自动登录(跳过登录页直接进入主界面)。
(4)登录成功后启动App内部服务(轮询消息服务或内外网络切换服务等)。
4.3 更新
登录成功后,App自动访问更新接口,判断是否有版本更新。
该系统架构是程序设计人员从实际应用及设计经验的角度出发,提出了移动端设计的基本理念,同时归纳总结并比较其他的设计模式和信息架构提出的优化方案,旨在帮助设计、产品、开发相关人员更好地思考移动端设计。
参考文献
[1] 李宝智.浅谈移动应用的架构设计[J].电脑与电信,2008(5):52-53.
[2] 任捷怡.基于移动终端设备的移动学习系统的研究与实现[D].西南交通大学,2012.
[3] 莫娇清.移动学习系统开发技术的探索与研究[D].华东师范大学,2009.