基于代码片段复用的安卓应用组装技术研究
【图文】:
辑以及两者的关联关系。将界面元素和业务逻辑的实现代码以代码片段的形式提取出来,并保存在代码库中。开发人员依据结构模型编写配置文件对应用模块的界面和业务逻辑进行描述,然后使用代码组装工具对代码片段进行组装,生成安卓应用框架代码。开发人员在此基础上完善核心代码,最终得到可运行的安卓应用。需要注意的是本文方法关注于安卓应用中的特定模块,即单个Activity所包含的界面和业务逻辑。并且生成的是应用模块的框架代码,,具体的业务逻辑还需要开发人员手工实现。1.2安卓应用结构模型安卓应用结构模型如图1所示。图1安卓应用结构模型图1中的安卓应用结构模型描述了应用模块中可能包含的界面元素和业务逻辑,以及两者之间的关系。下面对结构模型中的关键元素进行介绍:UI:界面元素的总称。用name来唯一表示该元素,并且有一组属性attrs集合用于对界面元素进行描述,map中第一个string表示属性名,第二个string表示属性值。界面元素又可以分为可见的界面元素和不可见的界面元素。InvisibleComponent:不可见的界面元素,是界面元素的容器,构成模块界面的框架。不可见的界面元素主要有Container。VisibleComponent:可见的界面元素。是界面中与用户进行交互的基本单位。可见的界面元素要嵌入不可见的界面元素中才能展示出来,这符合安卓应用开发的习惯。可见的界面元素包括Button(按钮)、Input(输入框)、List(列表)、GesturePass-word(手势密码)、EncryptInput(加密输入框)、PhoneCode(手机验证码输入框)、PicCode(图片验证码输入框)等。BusinessLogic:业务逻辑。负责处理用户与界面元素的交互以及相关的业务。有StoreToLocal(存储到本地)、ValidateInput(对输入的内容进行验证)和ClickEvent(处理点击事件)等。Dependen
对模块实现的功能进行描述。Constraint:约束条件。对模块中界面元素的组合嵌套规则进行描述,比如最基本的规则是可见的界面元素要嵌入容器中才能展示出来,具体的规则还要根据模块所要实现功能的业务约束来制定。Configuration:配置文件。表示某一个模块的具体实现,反映出模块的实现包含了哪些界面元素和业务逻辑,以及界面元素和业务逻辑之间的关联。配置文件中activity和layout分别是需要生成的Activity和布局文件名称,description是相关描述信息。1.3代码组装流程基于代码片段复用的安卓应用组装流程示意如图2所示。其中视图代码片段、业务代码片段、代码库、配置文件分别对应于安卓应用结构模型中的相应元素。图2代码组装流程示意图
【相似文献】
相关期刊论文 前10条
1 ;书摘[J];程序员;2002年03期
2 杨浪;张涛川;;代码复用中的方法研究与应用[J];电脑知识与技术;2009年12期
3 魏峰;李银锁;;C#调用非托管代码[J];电脑编程技巧与维护;2013年04期
4 简勇;;团队开发中的代码复用浅谈[J];常州信息职业技术学院学报;2007年01期
5 陈林博;江建慧;张丹青;;利用返回地址保护机制防御代码复用类攻击[J];计算机科学;2013年09期
6 郭颖;陈峰宏;周明辉;;大规模代码克隆的检测方法[J];计算机科学与探索;2014年04期
7 李天盟;刘凤芹;;TML语言简介[J];软件;2013年11期
8 张蓝博;张善从;陈蔚薇;;嵌入式系统中的代码动态链接模型[J];计算机工程与设计;2008年16期
9 李葆华,霍有亮;适用于面向对象范型的代码复用技术[J];西北大学学报(自然科学版);2000年01期
10 何淼;崔松健;;一种基于随机文件的C#与非托管C代码交互模式[J];信息化研究;2011年02期
相关博士学位论文 前1条
1 陈平;代码复用攻击与防御技术研究[D];南京大学;2012年
相关硕士学位论文 前7条
1 于浩;Android平台JNI代码单元测试方法研究[D];西南交通大学;2015年
2 庄轶;绕开细粒度地址随机化的实时代码复用攻击框架[D];南京大学;2014年
3 朱晓倩;一种基于图结构的Java代码存取方法[D];南京大学;2016年
4 刘超;基于动态二进制翻译框架的代码复用攻击检测与防御[D];湖南大学;2012年
5 李建忠;重复代码检测技术的研究[D];汕头大学;2005年
6 邱慧风;基于关系复用的代码构建自动化的研究[D];南昌大学;2012年
7 周波;用代码缓存复用技术提升Android即时编译器效率[D];复旦大学;2012年
本文编号:2700199
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/2700199.html