[发明专利]一种基于IFML的iOS开发建模方法在审
申请号: | 201710307279.1 | 申请日: | 2017-05-04 |
公开(公告)号: | CN107133042A | 公开(公告)日: | 2017-09-05 |
发明(设计)人: | 张天;潘敏学;黄安;宋建;李宣东 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 南京知识律师事务所32207 | 代理人: | 张苏沛 |
地址: | 210046 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 ifml ios 开发 建模 方法 | ||
技术领域
本发明属于软件工程,模型驱动工程领域。本发明涉及一种基于模型驱动方式,对iOS移动应用进行抽象提取交互流模型,并使用针对iOS平台扩展的IFML对其进行建模。
背景技术
近年来,移动应用市场蓬勃发展,移动app彻底改变了人们的生活方式,给人们的生活带来了许多便利。然而,日渐丰富的交互方式和越来越复杂的功能使手机应用的开发越来越复杂。移动应用本身呈现出多平台、多版本的态势,具有平台多,版本演化快的特点,如何更好并高效地支持多平台、多版本的开发是一个备受关注的问题。iOS是由苹果公司开发的移动操作系统,短短几年间iOS系统便从iPhone OS 1.2(iOS在更名前被称作iPhone OS)版本发展到目前(2017年4月)的iOS10.3版本,随着市场需求增长和智能终端市场的快速成长,iOS系统的更新迭代速度也会相应加快以更好地适应市场需求。
此外,苹果公司在2014年发布新的开发语言Swift,相较于Objective-C,Swift的语法更加简单高效、灵活易懂,将来很有可能取代Objective-C成为iOS的主流开发语言,然而目前大多数的iOS应用仍然使用Objective-C开发,因此两种语言间的迁移也将成为一种需求。模型是对具体实现的一种抽象,能够有效地屏蔽各系统版本以及各平台语言间的差异性,对一个移动应用抽象出模型并使用适当的建模语言刻画描述,从而帮助开发人员完成iOS移动应用从一个版本向另外一个版本,一种语言向另一种语言的迁移。
模型驱动开发技术使用模型从较高层次对应用进行抽象表示,将软件的复杂性分配到开发各个阶段,结合一些自动化模型转换和代码生成技术,能够大大降低移动应用开发的复杂性,缩短开发周期,能够很好地满足移动应用开发的要求。
现有技术中,已有公开的申请文本:《一种基于IFML的Android开发建模方》,申请公布号:CN106126213A。该现有技术公开了一种基于IFML的Android开发建模方法,首先Android开发人员确定将要开发的Android应用由多少界面组成以及界面间的跳转关系,确定每个界面中包括了哪些Android控件,哪些控件需要绑定事件并且进行事件处理,事件处理完后是否进行界面间的跳转。对Android应用的整体运行流程确定后,开发人员可以初步地使用标准IFML对Android应用的整体运行流程中各种元素建立交互流模型,这个模型是粗粒度并且是高度抽象的。然后,该工作针对移动平台对标准IFML进行扩展,使用扩展后的IFML再对模型进行细化,这样得到的模型便具有了移动平台的概念,体现出移动平台的特点。然而,这个模型中包含的元素信息仍不足够支撑Android开发,因此该工作进一步针对Android平台进行IFML的扩展,扩展后对Android应用运行流程进行描述刻画,这一步得到的模型信息能够帮助Android开发人员进行应用的开发。
IFML(交互流建模语言)使用交互流的方式对应用进行建模,得到的模型简洁直观,相比其他建模语言,更能体现出移动应用事件驱动的特点,符合移动应用的建模需求。但是,在面向iOS应用的建模方面IFML仍有不足。当前的IFML只能构建平台无关模型,模型与iOS平台代码间的跨度很大,很难直接根据模型进行原生应用的开发。因此,有必要在现有IFML基础上进行扩展,使其更好地支持iOS原生应用的开发。扩展完成后开发人员基于屏蔽了版本差异以及开发语言的iOS平台相关模型,再结合开发时iOS版本和开发语言,完成iOS应用的开发,后期随着版本演化,基于模型可以完成从一个版本到另外一个版本的迁移,也可以实现从一种iOS开发语言向另一种iOS开发语言的迁移。
发明内容
发明目的,iOS平台经过几年的迭代演化,平台架构的复杂性不断增加;新型硬件的发展给手机带来了更丰富的交互方式,也提升了iOS应用的开发的难度。传统的开发方式已经渐渐不能满足手机应用快速开发以占据市场的需求。
同时,iOS系统版本演化较快,演化的深度会体现到API层次,甚至造成新老版本之间的API无法兼容的情况,这给程序员的开发带来了巨大的挑战。如何应用新技术适应平台版本的演化成为学术和工业界共同关注的问题。
此外,iOS开发目前有两种较主流语言——Objective-C和Swift。Swift作为一种较新的语言具有许多优点,将来很有可能替代Objective-C成为iOS的主流开发语言,而目前的大多数应用使用的都是Objective-C语言进行开发,因此由Objective-C向Swift的迁移也会成为一种趋势。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710307279.1/2.html,转载请声明来源钻瓜专利网。