最近在公司内部负责两个微信小程序项目,因而将好久没有接触的开发文档浏览工作又捡了起来。
很多人或许要问了,产品经理1定要读开发文档么?这个不是技术童鞋要做的事情么?
客观地来讲,大多数时候你要是基于自己的平台去开发产品,那末是不需要在开发文档上花费多少心思的;但作为1个第3方平台的产品经理(特别如微信、支付宝等),浏览平台的API文档,则是相当有必要的,也能够说是产品基本功吧。
那末,产品经理究竟该如何来浏览API文档呢?
甚么是API
API,全称是Application Programming Interface,即利用程序编程接口,我们平常中习惯简称为“接口”。其实,接口这个词大家应当不会陌生,比如我们平时比较经常使用的“USB接口”,就是用来存储和传输数据用的;那甚么是API呢,API事实上是在内部预先定义了函数,能够使开发人员不必明白API内部实现的机制,就可以够实现某1个功能。
比如说你要实现1个手机注册的功能,那末相应地后台工程师就需要提供1个手机注册的接口,前端开发人员在调用接口实现功能的时候,只需依照既定的规则进行要求便可,不需要去理解该功能的实现逻辑。有了这么1个机制,就使得开发人员间的协作变得非常简洁、高效。
所以,你可以简单地理解为“接口决定了功能”。
那API究竟是用来干吗的呢?我的理解是,API实际上是大自然的搬运工。如何理解这个“搬运工”的概念,其实就是指搬运互联网数据,由于API的本质就是根据调用者的输入内容来返回1些其他内容,不就相当于把数据搬来搬去么(这个搬运工的比喻是否是很形象)。
API文档的结构
通常来讲,1份API文档内会包括多个API的信息,单个API的信息通常包括以下内容:
- 接口描写:这个接口是用来干吗的,和相干的规则;
- 接口地址:以网址的情势展现,你通过发送要求给这个网址来对接口进行交互操作;
- 要求方法:经常使用的有post和get两种方式,1个是读接口(经常使用get)1个是写接口(经常使用post);
- 要求参数:要求该接口时,需要提供的参数,参数属性包括名称、类型、是不是必填、描写等;
- 返回参数:接口正常响应后,返回的内容;
- 毛病代码:接口要求失败后,返回的毛病代码。
浏览API文档的好处
这个恐怕是大多数产品童鞋的疑惑,就是产品经理去浏览开发文档,究竟收益在哪里?从我个人的经验动身,或许会有这么几点收益:
1、对技术理解更深入,让产品更有想象力
试想这么1个场景,如果你是小程序的PM,但是又不去浏览开发文档,可能带来的悲剧结果就是,微信开放了许多小程序的最新能力,但是你却不知道如何利用到你自己的产品中去;或,即便知道大概有那末1回事,却不清楚具体可以做的操作细节有哪些,在本身产品中的利用场景在哪里,而常常产品细节和场景又是那末地重要。拿我自己实操的1个案例来讲,就是由于当时没有浏览开发文档,所以误以为不能获得微信群的名称,只能获得到微信群的id,致使最后在产品设计的时候没有给用户更好的绑定群信息感知的体验。
说的直白1点,没有新技术就没有新的想象力(别问我想象力是甚么)。
2、更好地预估开发工作量
长时间浏览API文档,可以对接口有更加深入的认识,那末在和开发评估开发工作量的进程中,也是有帮助的。由于很多时候,产品和开发对新旧的理解不同,所以会造成这样1种现象:新的功能不1定需要新的API,类似的功能可能需要重新做1个新的API。如果产品经理在熟习了开发文档以后,就可以大幅减少这类情况的产生,评估1个新的功能开发工作量的时候,不会仅仅站在产品设计的角度(这两个功能不是差不多么,所以基于之前的接口应当很快就可以上线吧),还会站在开发的角度(噢,这里的确要两个接口来实现),这样也更有益于产品和开发童鞋的和平共处。
3、锻炼产品抽象能力
事实上,接口本身就是个非常抽象的事物,大概在很久很久之前,有1个人跟我说过1句话,接口都是可以抽象起来进行复用的,但是前端却是千变万化的。嗯,其实1个利害的产品经理,如果真的非常熟习接口的话,他是可以做到像搭建乐高积木1样,来通过现有的接口搭建产品的。听说在腾讯内部,腾讯会将大系统尽可能拆分成功能单1的模块,在架构上尽可能使用插件式的设计,高度解耦,并且会将业务逻辑服务化,比如将摇1摇、飘流瓶等都做成服务,供微信、QQ等开发团队调用,这里调用的就是API。
总结
总的来讲,对第3方平台的产品经理,熟习官方API文档,是非常有必要的1件事情。不管是从产品设计的角度,还是对和开发的沟通调和,和产品经理本身修养的提高等,都会有很多的帮助,可让你从更高的纬度去俯视全部产品。
或许,站的更高,真的能看的更远呢?