總被程序員坑?你需要了解API接口
編輯導(dǎo)讀:程序員是公司里的技術(shù)崗,也是產(chǎn)品經(jīng)理最密切的合作伙伴。但是,程序員能看懂產(chǎn)品經(jīng)理的工作,產(chǎn)品經(jīng)理卻不一定能明白程序員的工作,因此也常常被無良程序員坑。本文就從API接口的維度,淺析API的概念以及為什么要了解它,避免PM們?cè)趯?shí)際工作對(duì)代碼技術(shù)類知識(shí)一無所知。
產(chǎn)品經(jīng)理在日常工作中,負(fù)責(zé)推進(jìn)項(xiàng)目進(jìn)度。當(dāng)他們與程序員對(duì)接的時(shí)候,詢問這個(gè)功能幾天能做完,程序員給的答案是五天。雖然你預(yù)計(jì)的時(shí)間只有三天,但你無計(jì)可施,只能相信他,并如約給了他五天時(shí)間,最后卻導(dǎo)致項(xiàng)目延期。
你并不知道這個(gè)功能的代碼究竟有多少,程序員的工作量有多大,他利用你的一無所知有意拖延你的項(xiàng)目進(jìn)度,最后背鍋的還是你。
程序員,是公司里的極致技術(shù)類職位,他能看懂我們的工作,我們卻很難理解他們。為了PM們?cè)趯?shí)際工作中不被無良程序員禍害,本文就從API接口的維度,淺析API的概念以及為什么要了解它,避免PM們?cè)趯?shí)際工作對(duì)代碼技術(shù)類知識(shí)一無所知。
一、API的概念
API,官方定義為應(yīng)用程序編程接口。就是把是一些預(yù)先定義的接口,用來提供應(yīng)用程序與開發(fā)人員基于某軟件或硬件得以訪問的一組例程,而又無需訪問源碼,或理解內(nèi)部工作機(jī)制的細(xì)節(jié)。
二、為什么要懂API文檔
既然API如此復(fù)雜,又不屬于PM的工作范疇,我們?yōu)楹涡枰筚M(fèi)周章的理解它呢,我們的目的是什么。
1. 明確需要的接口服務(wù)
API分為很多種,最基礎(chǔ)也是產(chǎn)品最需要的諸如短信API,地圖API,語(yǔ)音API等,如果我們的產(chǎn)品涉及到此方面的功能,那就必須了解這方面的API以便于在需求設(shè)計(jì)階段考慮更全面
2. 掌握項(xiàng)目開發(fā)的工作量,合理安排計(jì)劃
這里說白一點(diǎn)就是防止被程序員欺騙。你走過去,發(fā)現(xiàn)程序員正在勤勤懇懇,對(duì)不起,人家在做外包,就是欺負(fù)你代碼看不懂,氣不氣?但是如果你知道接口的難度和工作量,規(guī)定他在多久之內(nèi)給你,就不會(huì)出現(xiàn)拖延項(xiàng)目的情況,也更有利于項(xiàng)目流程的更進(jìn)
3. 聯(lián)調(diào)測(cè)試,識(shí)別項(xiàng)目風(fēng)險(xiǎn)點(diǎn)
一些關(guān)鍵接口、數(shù)據(jù)量大需要進(jìn)行大數(shù)據(jù)壓測(cè)的接口,必須經(jīng)過聯(lián)掉測(cè)試,測(cè)出它的最大訪問量,并對(duì)其進(jìn)行優(yōu)化或者設(shè)置限制,防止系統(tǒng)崩潰。
4. 方便項(xiàng)目對(duì)接
PM懂一點(diǎn)技術(shù),就不會(huì)鬧出明明不能做,卻還非要程序員做出來的笑話了。從這個(gè)角度看,也更有利于PM和程序員之間的團(tuán)隊(duì)溝通與和諧,避免矛盾,不至于弄翻友誼的小船。了解API可以使PM對(duì)技術(shù)理解更深刻,更好地衡量開發(fā)工作量和制定功能內(nèi)容。
三、舉例說明API的重要性
優(yōu)點(diǎn):
開發(fā)人員A開發(fā)了軟件A,開發(fā)人員B正在開發(fā)軟件B,A想用B的部分成果或功能輔助開發(fā)B軟件,但不想完整輸入A的軟件,怎么辦?于是A將軟件打包成一個(gè)函數(shù),放在B軟件中,這個(gè)函數(shù)就是API。
如果沒有API,B就必須把A軟件的流程整個(gè)走一遍,耗費(fèi)大量的時(shí)間精力,但如果是接口接入部分功能,輕松便捷,想用就用,想拔出就拔出。
有一杯密封果汁叫做數(shù)據(jù)庫(kù);果汁上面插著吸管,叫做API。如果你想喝到杯子里的果汁,由于它是密封的,你只能依靠吸管插入,否則你就喝不到果汁。
在這個(gè)故事中,你屬于某系統(tǒng),你想獲得果汁,就必須通過吸管,也就是接口,API來實(shí)現(xiàn),而且這個(gè)API是數(shù)據(jù)庫(kù)的唯一API。這樣說來,API是一種完善項(xiàng)目功能,提高產(chǎn)品價(jià)值的輔助工具。
缺點(diǎn):
因?yàn)锳PI是借助了第三方軟件,接入方在使用其他軟件包功能的同時(shí)相當(dāng)于為自身插入了一個(gè)監(jiān)控,會(huì)有數(shù)據(jù)泄露給第三方的危險(xiǎn)。所以如果是公司的核心功能,最好是使用企業(yè)內(nèi)部的API。
四、總結(jié):萬(wàn)物相通
也許大家都是看了美國(guó)的科幻大片,把程序員想象成黑客一般的高智商人物。但現(xiàn)實(shí)是,在大多數(shù)情況下他們也只是負(fù)責(zé)修復(fù)BUG,真正的源代碼不過是網(wǎng)上復(fù)制粘貼。所以PM們不要被他的表象所迷惑,了解他們的工作量,在團(tuán)隊(duì)中只要給出明確的指令管理項(xiàng)目進(jìn)度,并且大致了解程序員的工作內(nèi)容以便于你管理對(duì)接就行了。
最后我想說的是,在產(chǎn)品行業(yè),萬(wàn)物都是相通的,PM不用質(zhì)疑自己的工作或者感到自卑,如果說程序員是科學(xué)家,那么PM就相當(dāng)于哲學(xué)家,只不過是負(fù)責(zé)改造自然環(huán)境和人類社會(huì)的區(qū)別罷了,其思維邏輯都是大同小異,程序員其實(shí)就是PM知識(shí)的技術(shù)流。
本文由 @雨落 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自Unsplash,基于CC0協(xié)議。
同意讀懂接口文檔的重要性,但是為什么就戛然而止了,沒有讀懂接口文檔的方法論教學(xué)嗎hhhh
最后一段怕程序員看到了會(huì)打你 :P
很專業(yè)
謝謝??