一种App、小程序和Web接口定义和代码生成方法与流程

文档序号:11250620阅读:3750来源:国知局
一种App、小程序和Web接口定义和代码生成方法与流程

本发明属于移动app和微信小程序开发技术领域,尤其涉及app、小程序和web接口定义和代码生成方法。



背景技术:

手机几乎是每个人必备的物品,目前主流的手机是以安卓和ios为操作系统的智能手机。安卓和ios占智能手机操作系统市场份额的95%以上。运行在智能手机的上程序称为移动app(下文简称app)。app分为不联网的本地应用和联网的应用。其中联网的应用占比例估计在70%以上。开发联网的app需要定义app和服务器端的通讯接口,一般包括app上传的参数列表(包括名称和数据类型),简称上传参数;服务器端处理后返回给app的数据(包括结构、名称和数据类型),简称结果数据。接口的定义、实现和调试占移动app开发时间的比例很大(估计在30%到50%),主要的原因是:接口定义一般是用图文描述,不够严谨,容易造成开发过程中理解的偏差;接口调用是其严谨的,一个字符大小写的错误,将造成调用错误,所以开发完成后往往需要花比较多的时间找出开发中的错误;接口调试涉及app开发者和后台开发者,协调配合需要占用比较多的时间。

微信小程序是一种不需要下载安装就可以用微信打开的应用,下文简称小程序。它是腾讯公司开发的技术。其优点是用户体验类似于原生app,但是不要下载安装。对开发者来说,它的优点是不用针对安卓和ios分别开发,可以节省开发成本;也不用分别发布到苹果appstore和安卓市场。上述开发移动app的问题也适应于微信小程序的开发。



技术实现要素:

为了解决上述技术问题,本发明是通过以下技术方案实现的:一种app、小程序和web接口定义和代码生成方法,系统包括操作界面模块和代码生成模块;所述操作界面模块中包括项目信息(名称、包名等)、接口输入参数、输出参数、测试用例等操作界面及生成代码按钮;所述代码生成模块中包括安卓、ios、小程序和服务器端代码模板,以及根据用户输入的接口信息自动生成安卓、ios、小程序和服务器端代码的逻辑。

作为优选,所述项目模板中具有用于替换或删除的占位信息或标记,这些占位信息或标记指明了根据用户定义的接口信息插入相应代码的文件和位置。

本系统的操作步骤如下:

(a)在操作界面模块上输入项目信息和接口定义信息;

(b)点击操作界面模块上的生成代码按钮,通过代码生成模块,自动生成了安卓、ios、小程序和服务器端的相应代码,生成的代码包括但不限于:1、app和小程序端,接口输入参数录入界面(包括布局文件、事件响应函数),2、app和小程序端,获得用户输入数据并进行校验,然后访问服务器端接口,3、服务器端,获取客户端上传参数,返回测试用例中定义的数据,4、app和小程序端,解析服务端的应答信息并在显示在结果显示页面。

与现有技术相比,本发明的有益之处在于:

1、接口定义的方式是统一的,不受个人偏好和性格差异的影响,并且定义的结果是无歧义的,定义的效率更高。

2、自动生成了安卓、ios、小程序接口调用的代码,这些代码是经过严格测试的,确保接口调用过程不会出错;现有技术中,开发者需要根据接口文档手工编写安卓、ios和小程序接口调用、解析返回结果、显示返回结果的代码,需要大量的时间,并且容易出现理解上和拼写上的错误。

3、自动生成的代码除了接口调用外,还包括了接口输入和结果显示的布局文件和数据绑定代码,其中布局文件开发者一般需要修改,但是数据绑定代码一般不用修改。

4、如果服务器端返回的数据类型是数组或者列表,自动生成的代码还包括列表显示的子布局文件、列表适配器。根据经验,访问服务器获取数据列表并显示,在app开发中的需要花费的时间比例很大,一般在30%到60%左右。采用本系统后,这部分的时间将大大降低,开发者一般只需将产生的布局文件进行修改。

5、现有技术中,接口定义好后,为了便于安卓和ios开发进行接口调用测试,服务器端的开发者需要在服务器端接口未实现之前,开发一个接口模拟实现,实现这个模拟实现需要花费不少的时间,采用本系统后,这个模拟实现会自动生成,可以节省开发者大量的时间。

6、服务器端的开发者,在实现服务器端的接口时,主要的时间分为3部分:

a)解析app上传的参数并校验,

b)根据上传的参数进行逻辑处理,

c)把处理的结果根据约定的格式返回app

采用本系统后,a和c基本上不需要花费时间,只需将时间放在逻辑实现上,可以节省不少时间,尤其是在返回结果部分不容易出错。

附图说明

下面结合附图对本发明进一步说明。

图1是本发明系统结构图;

图2是安卓项目模板的一部分。

图中:1、操作界面模块;2、输入界面;3、生成代码按钮;4、项目模板;5、目标代码;6、代码生成模块;7、占位信息或标记。

具体实施方式

下面结合附图和具体实施方式对本发明进行详细描述。

一种app、小程序和服务器接口定义和代码生成的系统,如图1所示,包括操作界面模块1和代码生成模块6;所述操作界面模块1中包括项目信息输入和接口定义界面2和生成代码按钮3;所述代码生成模块6中具有项目模板4,项目模板4就是安卓、ios和服务器端的项目文件集,部分文件含有占位信息或标记7,这些占位信息或标记指明了接口信息生成的代码插入的位置。

这种app和服务器接口定义和代码生成的系统操作方法包括以下步骤:

(a)创建一个项目,输入项目名称、包名、项目描述等信息;

(b)点击操作界面模块2上的各种图标按钮,根据界面提示增加接口、输入参数、输出结果和测试用例。

(c)点击代码生成按钮3,代码生成逻辑会根据项目信息和接口定义,以及项目模板,自动生成app、小程序和服务器端的代码。

实施例一:

以开发一个社区交友的app为例(小程序具有相同的操作方式),其操作方式如下:

1.在操作界面上,创建项目,根据提示信息输入项目名称:“community”和包名:“cn.wwt.community”

2.新增一个接口,就是app请求一次服务器的过程。根据提示输入接口名称:“login”和描述信息:“用户登录”,创建好后,在接口列表里可以看到这个接口

3.新增输入参数,就是app上传服务器的参数列表,包括名称和类型,以及描述。在接口列表里选中login,点击新增输入参数按钮,根据提示输入参数名:“username”,类型:“string”。另外一个参数名:“password”,类型:“password”

4.新增输出参数,就是服务器收到app请求后,返回给app什么样的数据。点击新增输出按钮,根据提示输入参数名称:userid,类型:string。

5.新增测试用例,就是app和服务器进行接口测试时,上传哪些值到服务器,服务器返回什么值。一般至少包括2个测试用例,一个代表正确的操作流程,一个代表异常操作流程。6.点击代码生成按钮3,代码生成模块,根据项目模板和刚才定义的接口,会生成以下代码:

a)一个安卓项目,包括2个activityclass文件,2个layout文件,manifest.xml文件(包括

生成的activity)。其中一个activity实现了以下功能:接受用户输入的username和password,在用户输完后进行数据校验,校验成功之后请求服务器,解析服务器的应答信息,启动结果显示activity,把服务器的结果进行显示。

b)小程序和ios项目,实现的功能和安卓类似。c)一个服务器端项目,实现了接收app请求,根据请求的参数,返回对应的测试数据。

需要强调的是:以上仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1