关于大平台整合的一些见解

背景

现在互联网技术高速发展,各个平台的集成开发模式已经是一个互联网企业成熟度的一个重要标志。
你的公司是否还在采用手动解析Json?那么你的公司可能成熟度还很低。
我所说的平台,当然不是简单的前端单一的平台,而是大平台的整合。包括(Server,Android,IOS和HTML5)。

协议先行
简单的说,协议先行,或者叫接口先行,通过接口定义语言,生成标准的接口文档,(可能是Json格式,也可能是YAML格式)。
文档中定义好:入口方法,传入参数,返回值,出错状态码和消息,是否需要认证和授权等所有的信息。

接口生成
通过既定好的协议,然后通过协议解析,来生成统一的Server, IOS,Android,IOS 和HTML5-JS的通讯接口。
包括, 对象模型,网络部分实现

SDK生成
有了通用的通讯部分的实现,然后加上其他的辅助部分,比如:长连接,配置文档等,然后通过自动化的编译,生成统一的SDK。
Server端,生成 jar包
Android,生成 jar包
iOS,生成framework 动态或者静态库
HTML5, 生成JS文件

应用
有了SDK,服务端引入SDK包,就可以只关注于核心的业务逻辑的编写
客户端引入SDK包,只需要处理界面相关的部分,至于怎么和服务器交互,怎么加解密都封装在了SDK中。

好处
自动化的接口编译系统,方便,快捷。
网络接口,协议解析,认证,加解密全部封装在了SDK中,客户端完全解放出来
当接口有变化,只需重新出发自动化编译,即可完成各端的代码更新。

开源框架

既然这么好,那有没有现成的框架可以用?
入门级的框架, 可以采用 swagger, http://swagger.io/
如果需要更高级的,企业可以考虑自己搭建。

 

posted @ 2016-05-23 16:58  gshe  阅读(314)  评论(0编辑  收藏  举报