如何定義良好的API?
網際網路成功的核心原因在於幾個關鍵的協議標準:IP、TCP、UDP和DNS。當廠商和供應商就這些標準達成一致,並加以實施時,網際網路的潛力就爆發出來了。
其原因很簡單:開發者不必關心如何實現這些構件。他們在定義明確的協議之上構建,並假定底層平臺會處理所有的細枝末節。
今天,我們假設HTTP是這些協議之一;它是可用的,並且會以一種可靠的、可預測的方式行事。這一假設得到了HTTP幾乎無處不在的事實的支援。網路--以及大部分的移動世界--都執行在HTTP上。智慧裝置、聯網裝置和我的魚缸自動化系統都依靠HTTP來與我用來監控和操作它們的應用程式和服務交換API呼叫和資料。
HTTP是事實上的應用傳輸標準。
老實說,除了作為應用程式之間通訊的標準傳輸方式,HTTP層幾乎沒有什麼價值可言。透過解除開發人員對網路和應用基礎設施(包括HTTP)的關注,我們已經看到了令人難以置信的勢頭,他們將注意力集中在為數字經濟服務的API上。
今天的價值體現在API中,以及商業和技術使用它們的方式。
這不僅僅是指API被用來交換資料。定義良好的API描述了業務和操作流程,實現了自動化,併為我們發展和運營業務帶來了新的效率。定義明確的API是業務的數字代表,併為新的市場和商業模式擴充機會。
它是模擬數字業務和運營的API,並提供與兩者互動的方式。從搜尋產品目錄到部署應用程式,從訂購今晚的晚餐到無縫支付和交付流程,API是數字經濟中的業務運作方式。
API是一套管理裝置間資料交換的規則,這使它們成為協議。在一個數字化的預設世界中,這使得API成為技術棧的一部分。
定義明確的API是第8層。
API標準是不可避免的
可能會妨礙人們接受這一點的是今天的API大多是定製的。它們是由開發者精心製作的,每一個都是獨一無二的。
目前有多個行業在努力開放API,這一點從銀行業和零售業等方面的努力可以看出。這是第一步;建立定義明確的、有檔案記錄的API,使其他人能夠輕鬆使用。隨著時間的推移,API的使用將決定贏家和輸家,隨著他們向模仿最成功的API調整,事實上的標準將出現。在某些情況下,這些事實上的標準將被採納為官方標準。
對於老派網路專家來說,這也是最終促使大家模仿思科CLI的過程。
迅速接近的數字即預設世界要求使用API。API是應用程式在微服務和數字服務層整合的方式。這反過來意味著API是數字業務建立和參與生態系統的方式,建立新的商業模式,並獲得對消費者和合作夥伴與業務互動方式的洞察力。
隨著時間的推移,API的開放性將不可避免地把它們拉向單一行業標準。醫療保健、零售、金融、保險、支付等行業,將必然傾向於基於行業內共同業務功能的共同定義。
來自 “ https://www.networkcomputing.com/networking/well-d ”,原文連結:http://blog.itpub.net/31545813/viewspace-2778553/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何設計一個良好的API?API
- 如何設計一個良好的API介面?API
- 如何定義API業務模型? - henriqAPI模型
- 服務端指南 | 良好的 API 設計指南服務端API
- 如何定義NoSQLSQL
- RESTful API定義及使用規範RESTAPI
- 如何建立良好的資料模型?模型
- php變數的型別是如何轉換的?常量如何定義?系統常量是如何定義的?PHP變數型別
- 模型的列表定義中,使用函式時如何定義引數?模型函式
- grafana如何使用定義的變數Grafana變數
- [Vue] 如何定義全域性的方法?Vue
- 幽默:如何建立一個良好的關係?
- 包裝類的定義,API的使用和快取問題API快取
- 如何定義專案的成功標準?
- 【高德地圖API】如何設定Marker的offset?地圖API
- VB中得到當前目錄API定義 (轉)API
- 如何培養良好的程式設計實踐程式設計
- 如何培養良好的程式設計風格程式設計
- 前端如何定義一個常量前端
- python如何定義函式Python函式
- 如何定義和建立架構架構
- 如何定義Xsd檔案
- JavaScript中是如何定義私有變數的JavaScript變數
- IT專案經理是如何定義“成功”的
- 【高德地圖API】如何設定Icon的imageSize?地圖API
- TeamTopologies/Team-API-template:用於定義團隊拓撲中團隊API 的模板API
- 如何與上級保持良好關係
- 學習java技術如何保持良好的心態Java
- 如何在Kubernetes 裡新增自定義的 API 物件(一)API物件
- 敏捷開發中如何定義“完成”?敏捷
- 如何正確定義效能瓶頸
- CRM系統是如何定義銷售漏斗的?
- 如何優雅的定義統一響應物件物件
- 如何刪除使用export定義過的變數?Export變數
- 程式的定義
- 如何寫出具有良好可測試性的程式碼?
- 寶塔皮膚如何設定自定義404
- Python如何定義一個函式Python函式