zysam / blog

7 stars 0 forks source link

swagger !文档即测试,文档即代码,文档即服务 #10

Open zysam opened 8 years ago

zysam commented 8 years ago

程序员最烦一件事,1 写文档;2 别人没写文档;

swagger 似乎能解决这个麻烦,如标题所说;

另外还有,基于文档来生成服务的,无缝与 express, hapi, koa 等框架接入,还支持 mongodb, validator等等。不过,我是不会考虑用的。

所以,你只要写 swagger 的文档就好。

当然,搭建相关服务啦。

不只,配置相关服务发现更新文档,自定义模版等等。。。

好像又引入一个轮子,但好像值得一试。

实践再续。

zysam commented 8 years ago

swagger-node 实践

swagger-node 项目地址

介始

一个工具(轮子),基于 node.js 来打造 swagger 风格的 http 服务。可以说是,跟 sails, hapi 类似,脚手架还可以是基于它们的打造。

核心是文档。 文档也是API,API分四部分,详见 api 目录,目录功能说明在仓库的 doc 目录下。 文档提供友好的网页工具编辑、预览。

使用说明

核心

creat project -> framework as mw -> runner adapt framework -> tools; 分层设计不够清晰,大致是以上流程,难扩展。所以 koa 没有加进来。 koa 使用 generator 函数与其它框架的普通函数格格不入。

扩展

总结

优点:

缺点:

zysam commented 8 years ago

Mock data


mock 示例

伪数据,可以尝试用 mockjs 来做,看示例,有点强大。

待续!

zysam commented 8 years ago

swagger-parse


对 swagger.yml 进行,打包、分解、校验等功能,还提供 web 交互。也就是,swagger.yml 开始写得复杂了,有模版,嵌套的功能。

基于此,出现一些项目: