当敏捷团队碰撞RESTful,RAML心得体会

0.0 前言

自己的团队是以Agile敏捷管理方式构建的,为了前后端的分离,使各端工程师更加专注得进行自己所负责的模块与功能。

好用的东西整理在前面:

restclient #restclient.net
#restful客户端模拟测试,有firefox、chrome插件

RAMLang #https://github.com/syple/generator-ramlang
#RAMLang is a simple, easy-to-use command line tool. It's main goal is to provide AngularJS services to help communicate with RESTful API's.
#生成AngularJS

Restlet Studio #http://restlet.com/products/restlet-studio/
#开发RESTful API,生成Server(Java/Node.js)、ClientSDK(Android/Java/Obj-C/AngularJS)

0.1 第一阶段

初步探索更有效、便捷的开发方式

Xmind #思维导图  
MediaWiki #手熟的wiki系统

一开始系统设计,遵循API模式,团队内部总结JSON数据的格式及安全机制,API由Xmind的思维导图作出,而开发完成的API由开发人员在MediaWiki编写。这个阶段团队可以相对直观得设计API(思维导图),可以在开发后有效查询API(MediaWiki)。

缺陷:

1.Ximd与MediaWiki属于重复工作

2.Xmind无法以Json形式清晰罗列各种API的

0.2 第二阶段

进一步减少API设计及整理的重复工作

    RESTful Web APIs #解惑的书籍,看了这本才决定去学习restful规范,以此改进自己的轮子  
    RAML #RESTful API Modeling Language

在学习RESTful Web APIs书之后,更加明白了RAML的重要性,不但在书写设计API时有更多的规范可以参考,更重要的是,RAML可自由转换成Wiki及HTML页面,无需重复的写入工作。

0.3 疑问与探索

继续hack掉存在麻烦或者疑惑的工作

Ask 1.RAML生成的wiki及html无法进行权限控制,如何分级来对外发布记载API的Wiki?

Ask 2.RAML是相对规范有规律的,那么如何与后台语言更高效结合,自动生成CURD?

微信扫一扫交流

作者:ryanemax
微信关注:ryanemax (刘雨飏)
本文出处:https://futurestack.cn/cookbook/api/newforraml/
授权协议: CC BY-SA 4.0