產(chǎn)品經(jīng)理須知:如何區(qū)分前端后端,常說的API和SDK又是什么?
編輯導(dǎo)語:產(chǎn)品經(jīng)理的工作常常需要和多個崗位的人進行對接,因此,對其他崗位的名稱、工作內(nèi)容等,產(chǎn)品經(jīng)理最好有所了解,以免工作時找錯對應(yīng)人員。其中,前端、后端、API、SDK等名詞便是產(chǎn)品經(jīng)理需要了解的,本文作者進行了總結(jié),一起來看一下。
一、如何區(qū)分前臺、后臺、前端開發(fā)人員、后端開發(fā)人員
前臺、后臺,指的是具體頁面。
- 前臺,是用戶直接能看到的頁面,所有人都可以訪問。
- 后臺,是有權(quán)限的運營人員或特殊用戶(比如淘寶賣家)用權(quán)限登錄后才看得到的頁面,除了能看到其他人看不到的報表外,在后臺還能修改前臺顯示給用戶看的內(nèi)容。
- 前端/后端,很多時候指的是人,即前/后端工程師。衍生含義為——前/后端工程師的工作內(nèi)容。
不嚴謹?shù)恼f法是:寫頁面的就是前端,操作數(shù)據(jù)的就是后端。前端負責還原UI設(shè)計的界面,以及與后端聯(lián)調(diào)接口。一般設(shè)計師只需要與前端溝通,產(chǎn)品經(jīng)理需要與兩者溝通。
前端若細分,可分為小程序前端、web前端、H5前端。一般來說,小程序前端、web前端、H5前端使用的語言都是html+css,因此一個前端一般能做web頁面也能做H5頁面,也能干小程序的頁面開發(fā)的活。而對于APP開發(fā),安卓開發(fā)和iOS開發(fā)就是前端,一般只會專注于某端APP的活。
- Web前端開發(fā):HTML+CSS+JavaScript。
- Android終端開發(fā):Java(開發(fā)工具:Androidstudio)。
- iOS終端開發(fā):Objective-C(開發(fā)工具:Xcode)。
前臺頁面和數(shù)據(jù)庫的溝通,主要通過API進行溝通。
舉例:貓眼APP的影院列頁面,前端只要需要負責頁面布局還原和接口(API)聯(lián)調(diào)的工作,如文字大小、頁面布局排版、標簽的樣式等;但是影院列表的數(shù)據(jù)返回就要連接數(shù)據(jù)庫,這個就需要后端開發(fā)做邏輯處理了,頁面調(diào)用接口,后端根據(jù)入?yún)臄?shù)據(jù)庫中查詢相應(yīng)數(shù)據(jù),再進行邏輯處理,最后返回到前端頁面,可以理解為一個輸入輸出的過程。
如果你發(fā)現(xiàn)你身邊有這樣一個人,他前端后臺,樣樣精通,文能提筆發(fā)paper,武能調(diào)試除bug。這種人叫做:全棧工程師。
再進一步探討貓眼APP頁面,貓眼APP“影院列表頁”的接口除了“獲取影院列表”的接口外,還有其他接口,比如城市列表接口、品牌列表接口、區(qū)域列表接口、地鐵列表接口、搜索接口等,但是“獲取用戶當前位置”功能,這個就不需要后端參與了,前端直接調(diào)用系統(tǒng)定位服務(wù)就可以實現(xiàn)了。
多個接口的組合使用形成了功能,如上方貓眼APP,多個接口組合,形成了一個完整的找影院的功能。后續(xù)如果產(chǎn)品要去接入第三方的開放平臺,本質(zhì)就是對第三方開放出來的接口進行組合使用,來實現(xiàn)自己所需的功能。
了解了前后端的原理后,后續(xù)對于功能出現(xiàn)bug時,就不至于不知道找誰了。產(chǎn)品經(jīng)理在驗收的時候,如果是頁面布局問題,直接找前端溝通,但如果是頁面數(shù)據(jù)返回不對的問題,這一般是接口的問題,就需要跟后端溝通了,當然也有可能是前端入?yún)麇e了。
二、API與SDK的區(qū)別
上文提到接口,也就是API,那么API到底是什么?API是前端調(diào)用后端數(shù)據(jù)的一個通道,通過這個通道,前端頁面可以訪問到后端的數(shù)據(jù),但是又無需調(diào)用源代碼。
API又分為open API和私有API。Open API顧名思義,即是向所有人公開的接口,允許任何人調(diào)用它并獲取到它背后的數(shù)據(jù)。在也有些公司作為產(chǎn)品出售。如百度的AI市場,有語音識別、語音合成、人臉識別、美顏SDK等出售,研發(fā)使用現(xiàn)成的SDK,節(jié)省了研發(fā)時間。
閱讀接口文檔的關(guān)鍵在于讀懂入?yún)⒑统鰠ⅲ涌谙喈斢诤瘮?shù),客戶端調(diào)用API,輸入信息后,執(zhí)行完函數(shù),輸出結(jié)果返回前端,下圖是“銀行卡OCR識別”接口實例。
入?yún)ⅲ恒y行卡圖片
出參:OCR識別到的卡號,以及根據(jù)卡號查詢到的銀行卡基本信息:卡類型、銀行l(wèi)ogo、銀行名稱等
注:可到阿里云、百度云、騰訊云等云平臺找更多的接口案例。
SDK:概念:軟件開發(fā)工具包(SDK,全稱:Software Development Kit)。
一般都是一些軟件工程師為特定的軟件包、軟件框架、硬件平臺、操作系統(tǒng)等建立應(yīng)用軟件時的開發(fā)工具的集合。
通俗點是指由第三方服務(wù)商提供的實現(xiàn)軟件產(chǎn)品某項功能的工具包。
就相當于很多API和其他文件的集合體,你可以用這個完成某一個事情。SDK可不需要依賴網(wǎng)絡(luò),如APP安裝包里只要涵蓋人臉對比SDK,因為人臉對比的方法已經(jīng)封裝在SDK,而SDK在用戶安裝APP時,已經(jīng)下載到手機,中因此可以實現(xiàn)離線場景下的人臉對比。如百度人臉對比SDK。
舉例子:整個計算器產(chǎn)品可以看做是一個SDK,它里面有API集合(計算器),說明文檔(說明書),以及一些其他文件。這個SDK的功能就是計算,可能要算什么不確定,但是你可以通過這個SDK中的某個方法完成,實現(xiàn)你的目的。
作者:口述產(chǎn)品,公眾號:口述產(chǎn)品
本文由 @口述產(chǎn)品 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載
題圖來自 Unsplash,基于 CC0 協(xié)議
知識點+1+1……
一、
Web前端開發(fā):HTML+CSS+JavaScript。
Android終端開發(fā):Java(開發(fā)工具:Androidstudio)。
iOS終端開發(fā):Objective-C(開發(fā)工具:Xcode)。
二、
SDK就相當于很多API和其他文件的集合體,你可以用這個完成某一個事情。
舉例子:整個計算器產(chǎn)品可以看做是一個SDK,它里面有API集合(計算器),說明文檔(說明書),以及一些其他文件。這個SDK的功能就是計算,可能要算什么不確定,但是你可以通過這個SDK中的某個方法完成,實現(xiàn)你的目的。
寫的很好
太妙了
??
我也聽懂了 太棒啦
感謝,很通俗易懂!
感謝!對于沒有技術(shù)背景的產(chǎn)品小白來說,非常有用,通俗易懂!
謝謝
真不錯!收藏了!
很實用啊~謝謝分享~