產品經理須知:如何區分前端后端,常說的API和SDK又是什么?

10 評論 18723 瀏覽 220 收藏 8 分鐘

編輯導語:產品經理的工作常常需要和多個崗位的人進行對接,因此,對其他崗位的名稱、工作內容等,產品經理最好有所了解,以免工作時找錯對應人員。其中,前端、后端、API、SDK等名詞便是產品經理需要了解的,本文作者進行了總結,一起來看一下。

一、如何區分前臺、后臺、前端開發人員、后端開發人員

前臺、后臺,指的是具體頁面。

  • 前臺,是用戶直接能看到的頁面,所有人都可以訪問。
  • 后臺,是有權限的運營人員或特殊用戶(比如淘寶賣家)用權限登錄后才看得到的頁面,除了能看到其他人看不到的報表外,在后臺還能修改前臺顯示給用戶看的內容。
  • 前端/后端,很多時候指的是人,即前/后端工程師。衍生含義為——前/后端工程師的工作內容。

不嚴謹的說法是:寫頁面的就是前端,操作數據的就是后端。前端負責還原UI設計的界面,以及與后端聯調接口。一般設計師只需要與前端溝通,產品經理需要與兩者溝通。

前端若細分,可分為小程序前端、web前端、H5前端。一般來說,小程序前端、web前端、H5前端使用的語言都是html+css,因此一個前端一般能做web頁面也能做H5頁面,也能干小程序的頁面開發的活。而對于APP開發,安卓開發和iOS開發就是前端,一般只會專注于某端APP的活。

  • Web前端開發:HTML+CSS+JavaScript。
  • Android終端開發:Java(開發工具:Androidstudio)。
  • iOS終端開發:Objective-C(開發工具:Xcode)。

前臺頁面和數據庫的溝通,主要通過API進行溝通。

舉例:貓眼APP的影院列頁面,前端只要需要負責頁面布局還原和接口(API)聯調的工作,如文字大小、頁面布局排版、標簽的樣式等;但是影院列表的數據返回就要連接數據庫,這個就需要后端開發做邏輯處理了,頁面調用接口,后端根據入參從數據庫中查詢相應數據,再進行邏輯處理,最后返回到前端頁面,可以理解為一個輸入輸出的過程。

如果你發現你身邊有這樣一個人,他前端后臺,樣樣精通,文能提筆發paper,武能調試除bug。這種人叫做:全棧工程師。

再進一步探討貓眼APP頁面,貓眼APP“影院列表頁”的接口除了“獲取影院列表”的接口外,還有其他接口,比如城市列表接口、品牌列表接口、區域列表接口、地鐵列表接口、搜索接口等,但是“獲取用戶當前位置”功能,這個就不需要后端參與了,前端直接調用系統定位服務就可以實現了。

多個接口的組合使用形成了功能,如上方貓眼APP,多個接口組合,形成了一個完整的找影院的功能。后續如果產品要去接入第三方的開放平臺,本質就是對第三方開放出來的接口進行組合使用,來實現自己所需的功能。

了解了前后端的原理后,后續對于功能出現bug時,就不至于不知道找誰了。產品經理在驗收的時候,如果是頁面布局問題,直接找前端溝通,但如果是頁面數據返回不對的問題,這一般是接口的問題,就需要跟后端溝通了,當然也有可能是前端入參傳錯了。

二、API與SDK的區別

上文提到接口,也就是API,那么API到底是什么?API是前端調用后端數據的一個通道,通過這個通道,前端頁面可以訪問到后端的數據,但是又無需調用源代碼。

API又分為open API和私有API。Open API顧名思義,即是向所有人公開的接口,允許任何人調用它并獲取到它背后的數據。在也有些公司作為產品出售。如百度的AI市場,有語音識別、語音合成、人臉識別、美顏SDK等出售,研發使用現成的SDK,節省了研發時間。

閱讀接口文檔的關鍵在于讀懂入參和出參,接口相當于函數,客戶端調用API,輸入信息后,執行完函數,輸出結果返回前端,下圖是“銀行卡OCR識別”接口實例。

入參:銀行卡圖片
出參:OCR識別到的卡號,以及根據卡號查詢到的銀行卡基本信息:卡類型、銀行logo、銀行名稱等

注:可到阿里云、百度云、騰訊云等云平臺找更多的接口案例。

SDK:概念:軟件開發工具包(SDK,全稱:Software Development Kit)。

一般都是一些軟件工程師為特定的軟件包、軟件框架、硬件平臺、操作系統等建立應用軟件時的開發工具的集合。

通俗點是指由第三方服務商提供的實現軟件產品某項功能的工具包。

就相當于很多API和其他文件的集合體,你可以用這個完成某一個事情。SDK可不需要依賴網絡,如APP安裝包里只要涵蓋人臉對比SDK,因為人臉對比的方法已經封裝在SDK,而SDK在用戶安裝APP時,已經下載到手機,中因此可以實現離線場景下的人臉對比。如百度人臉對比SDK。

舉例子:整個計算器產品可以看做是一個SDK,它里面有API集合(計算器),說明文檔(說明書),以及一些其他文件。這個SDK的功能就是計算,可能要算什么不確定,但是你可以通過這個SDK中的某個方法完成,實現你的目的。

 

作者:口述產品,公眾號:口述產品

本文由 @口述產品 原創發布于人人都是產品經理,未經許可,禁止轉載

題圖來自 Unsplash,基于 CC0 協議

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 知識點+1+1……

    一、
    Web前端開發:HTML+CSS+JavaScript。
    Android終端開發:Java(開發工具:Androidstudio)。
    iOS終端開發:Objective-C(開發工具:Xcode)。

    二、
    SDK就相當于很多API和其他文件的集合體,你可以用這個完成某一個事情。
    舉例子:整個計算器產品可以看做是一個SDK,它里面有API集合(計算器),說明文檔(說明書),以及一些其他文件。這個SDK的功能就是計算,可能要算什么不確定,但是你可以通過這個SDK中的某個方法完成,實現你的目的。

    來自廣東 回復
  2. 寫的很好

    來自廣東 回復
  3. 太妙了

    來自北京 回復
  4. ??

    回復
  5. 我也聽懂了 太棒啦

    來自北京 回復
  6. 感謝,很通俗易懂!

    來自廣東 回復
  7. 感謝!對于沒有技術背景的產品小白來說,非常有用,通俗易懂!

    來自北京 回復
    1. 謝謝

      來自廣東 回復
  8. 真不錯!收藏了!

    來自廣東 回復
  9. 很實用啊~謝謝分享~

    來自北京 回復