您的位置:首頁>正文

API開發中的那些事兒

兵馬未動, 糧草先行, 意思是兵馬未動, 糧草先行是指出兵之前, 先準備好糧食和草料。 比喻在做某件事情之前, 提前做好準備工作。

這個成語的典故出自林占財《森林中的遠征》:“他很同情地說道:‘是的:“兵馬未動, 糧草先行。 ”這是自古以來用兵的老規矩, 你們沒有糧食怎麼走這麼遠的路!”

有點扯遠了, 今天我們來討論下如何站在用戶的角度構建API!

以下僅是個人的一些見解, 如有描述不當的地方, 還請指出!

API是什麼?

百科中是這麼介紹的:應用程式介面(英語:Application Programming Interface, 簡稱:API), 又稱為應用程式設計介面, 就是軟體系統不同組成部分銜接的約定。 由於近年來軟體的規模日益龐大, 常常需要把複雜的系統劃分成小的組成部分, 程式設計介面的設計十分重要。 程式設計的實踐中, 程式設計介面的設計首先要使軟體系統的職責得到合理劃分。 良好的介面設計可以降低系統各部分的相互依賴,

提高組成單元的內聚性, 降低組成單元間的耦合程度, 從而提高系統的維護性和擴展性。

通俗的來講, 就是資料提供方(暫且這麼說明吧)

構建

當所有的需求的完全確定之後, 需要做的並不是立即投入到開發中。 如果您是屬於這種情況的, 個人建議還是變更一下吧!

個人認為API開發需要遵循以下點:

定義介面規範

確定請求參數、參數類型

確定返回資料類型、資料格式、參數

介面文檔

開發人員在開發API時, 有的時候不會特別的注重這些, 返回的資料隨意定義, 這種情況不知道大家遇到過沒有, 如果有遇到過的同仁, 我能說的就是:來吧, 借你塊板磚用用!

良好的API設計規範

上圖是個人在開發過程中整理出來的一套介面文檔, 其中詳細的包含了請求資訊、請求參數、返回格式、返回說明等介紹(只是介紹的基礎的應用, 有關安全方面的問題還需要各位自行加上), 不敢說該套定義規範是完美的, 但是給到用戶後至少不會挨駡的!

相容

API在開發過程中也是時刻在更新的,

也會有不同的版本反覆運算的, 這種情況在開發的時候就需要考慮到相容性了, 如果一旦某個返回資料結構被更改, 導致的結果就是用戶端閃退或者流程走不下去的情況!

這種情況下, 要麼就是簡單暴力, 新開一個API處理新的邏輯。 要麼就是對已經存在的API進行修改, 修改時候切記考慮線上版本的情況, 儘量是新增欄位而不是修改原有欄位。

優化

API開發第一步往往是為了完成某些具體的功能, 但是隨著業務的變更, 某個頁面可能需要的就不是單單的一個API就能實現的, 這種情況下, 為了減少用戶端和伺服器在建立連接時候消耗的時間, 在業務場景允許的情況下, 儘量將API進行合併, 最好通過一個API就能獲取到全部的資訊!

欄位精簡, 就是只返回有用的資訊, 將不需要的欄位儘量精簡掉, 避免傳輸無用的資料浪費流量!

終極目標:用戶體驗。 這個不管是在做Web開發、還是APP開發, 總會被提及到, 沒有什麼原因, 用戶高於一切!

本篇文章頭條號作者:瘋狂的碼農

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示