用apiDoc简化接口开发
身为程序员最讨厌看到的代码没有注释,自己的代码却讨厌写注释,觉得麻烦,接口也是这样。
比如公司要做一个H5活动的页面,开发文档已经发到后端开发、设计、与前端的邮箱了,其实这个时候就可以开始开发了。开发人员开始论证H5页面中逻辑是否能够实现,以及该逻辑的合理性,及时的反馈给产品进行修改或者优化。等一切都定下来的时候,各方面就可以开始动工了。
一般来说,设计资源会在后端接口开发完成之前给到。对于一个对开发工作足够得心应手的后端工程师,一般看到设计稿,就知道接口的数据结构和内部的逻辑是怎么样的。因此不必等到接口真正开发完成,才给到前端同学。
这样子前端同学和后端同学,均能并行开发。比如一个H5活动页面需要原来需要1个星期来完成,现在只需要4天时间,节省的两天,程序员就可以用来提升自己技能和用来休息了。
但是呢,人都是惰性的。开发的时候不愿意写文档,尤其是接口文档,觉得很麻烦。我的同事们,有时候也懒得写接口文档,前端同学根据接口返回的数据来进行开发,有时候接口返回数据出错,前端并不知道正确的接口数据是什么,就会发生耽误开发时间,本来能够如期完成工作,结果在对接接口方面花费了太多的时间。
在大量的接口开发工作中,我使用了很多文档工具,如Markdown 工具(马克飞象),另外一个就是ApiDoc文档生成工具。markdown 语法大部分写过程序的同学都知道,比较好用,适合写个博客什么的,可以把写作的焦点放在内容上,而不是格式上。但是对于markdown 写的接口文档来讲,可能就不太适用了。接口文档需要丰富的格式来构建层次,还需要表格来装载参数。当接口很多的时候,还需要将接口分类,还需要有检索接口的功能。另外一个痛点就是,比如后端PHP开发同学写了个markdown文档,给到了前端同学,或者客户端同学,还要提示他们如何使用。并不是每个人电脑都装了markdown解析器。这样子就很烦人了,还好ApiDoc 解决了这个棘手的问题。
用了很长时间,总结了ApiDoc 的几个优点:
1、安装简便,傻瓜式安装
2、接口文档语法很简单,不必增加记忆成本,写接口文档很轻松,不再耗费大量时间,而是顺手复制粘贴
3、生成的文档格式漂亮,并且实用,满足了开发人员对接口的各种需求。
由于本文并不是讲述ApiDoc 的教程文档,说实在话,这类东西,还是官方的文档最实用。参数那么多,并不需要拿个小本本记下来,需要的时候,到官网上复制粘贴即可,用多了,自然常用的就会记下来。附一张ApiDoc 生成文档的截图:

用apiDoc简化接口开发的更多相关文章
- DbUtils是Apache出品一款简化JDBC开发的工具类
DbUtils - DbUtils是Apache出品一款简化JDBC开发的工具类 - 使用DbUtils可以让我们JDBC的开发更加简单 - DbUtils的使用: ...
- windows下shopex农行支付接口开发笔记
1.首先是配置Java和tomcat 农行文档里的是linux下的说明.window下我们要按照以下在setclasspath.bat里设置JAVA_HOME,JRE_HOME(红色字体部分).设置这 ...
- 《连载 | 物联网框架ServerSuperIO教程》- 13.自定义视图显示接口开发,满足不同的显示需求
1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...
- 《Python Web 接口开发与测试》---即将出版
为什么要出这样一本书? 首先,今年我有不少工作是跟接口自动化相关的,工作中的接口自动化颇有成效. 我一直是一个没有测试大格局的人,在各种移动测试技术爆发的这一年,我却默默耕耘着自己的一亩三分地儿(We ...
- 浅谈 PHP 与手机 APP 开发(API 接口开发) -- 转载
转载自:http://www.thinkphp.cn/topic/5023.html 这个帖子写给不太了解PHP与API开发的人 一.先简单回答两个问题: 1.PHP 可以开发客户端? 答:不可以,因 ...
- 支付宝WAP支付接口开发(Node/Coffee语言)
此博客不更新很久了, 更新的文档在这, 有兴趣到这里围观: http://neutra.github.io/2013/%E6%94%AF%E4%BB%98%E5%AE%9DWAP%E6%94%AF%E ...
- C#微信公众号接口开发,灵活利用网页授权、带参数二维码、模板消息,提升用户体验之完成用户绑定个人微信及验证码获取
一.前言 当下微信公众号几乎已经是每个公司必备的,但是大部分微信公众账号用户体验都欠佳,特别是涉及到用户绑定等,需要用户进行复杂的操作才可以和网站绑定,或者很多公司直接不绑定,而是每次都让用户填写账号 ...
- C#.NET微信公众账号接口开发系列文章整理--微信接口开发目录,方便需要的博友查询
前言: 涉及微信接口开发比较早也做的挺多的,有时间的时候整理了开发过程中一些思路案例,供刚学习微信开发的朋友参考.其实微信接口开发还是比较简单的,但是由于调试比较麻烦,加上微信偶尔也会给开发者挖坑,并 ...
- C#/ASP.NET MVC微信公众号接口开发之从零开发(四) 微信自定义菜单(附源码)
C#/ASP.NET MVC微信接口开发文章目录: 1.C#/ASP.NET MVC微信公众号接口开发之从零开发(一) 接入微信公众平台 2.C#/ASP.NET MVC微信公众号接口开发之从零开发( ...
随机推荐
- CentOS MPlayer
.准备软件 mplayer官网:http://www.mplayerhq.hu/design7/news.html RPM Fusion网址:http://rpmfusion.org/ EPEL网址: ...
- 解压cpio.gz、zip类型文件
aix上的oracle介质文件是10gr2_aix5l64_database.cpio.gz 解压方法: gunzip 10gr2_aix5l64_database.cpio.gz cpio -idm ...
- [Golang] GOROOT、GOPATH和Project目录说明
go env环境查看 用go env 可查看当前go环境变量. $ go env GOARCH="amd64" GOBIN="" GOEXE="&qu ...
- vue的路由懒加载
路由懒加载官方介绍 非懒加载写法: import Login from '@/components/Login' 所有路由涉及到的文件会被打包到 app.xxx.js 中 懒加载写法: const L ...
- JVM 综述
概览 从 JVM 的总体上看,它解决了3个问题: Java 程序的内存管理(GC & 运行时数据区). Java Class 二进制字节流的加载(ClassLoader). Java 程序的执 ...
- MongoDB中空间数据的存储和操作
本文使用官方C# Driver,实现在MongoDB中存储,查询空间数据(矢量) 空间数据的存储 本例中,从一个矢量文件(shapefile格式)中读取矢量要素空间信息以及属性表,并写入到MongoD ...
- JSON跨域解决方案收集
最近面试问的挺多的一个问题,就是JavaScript的跨域问题.在这里,对跨域的一些方法做个总结.由于浏览器的同源策略,不同域名.不同端口.不同协议都会构成跨域:但在实际的业务中,很多场景需要进行跨域 ...
- C# Thread.Abort方法真的让线程停止了吗?
大家都知道在C#里面,我们可以使用 Thread.Start方法来启动一个线程,当我们想停止执行的线程时可以使用Thread.Abort方法来强制停止正在执行的线程,但是请注意,你确定调用了Threa ...
- asp.net错误记录
//登录 jquery-ajax post请求后台无法获取数据,get就可以!!!原因:get方法,后台接收用Request.QueryString["para1"];post方法 ...
- 排查CentOS7.0的联网情况
1.ifconfig命令. 查看网络配置是否有问题 在/etc/sysconfig/network-scripts/ifcfg-ens33里面配置好网络,记住onboot=on这个选项一定要设置,不然 ...