什麼是“API 優先”方法? - wix

banq發表於2022-05-13

產品經理在開發人員的幫助下定義產品的功能。然後將這些功能制定為 API。該 API 本身就是一個產品。
這就是API優先方法。
具體來說,此 API 將允許您交付產品經理想要提供給終端使用者的 UI(我們可以將其視為預設 UI)。

而非API優先則是:
作為開發人員,產品經理會為您提供包含螢幕和互動的簡報。根據此簡報,您然後去設計您的軟體。您可能需要一些 API 讓客戶端與您的服務對話,但這些將是您工作的副產品。
例如,假設產品經理提供了一個描述 TODO 列表的簡報。根據此簡報,您將定義實現此特定產品所需的 API(新增任務、刪除任務)。你的 API 可能是這樣的:

Task { id: GUID, content: String, done: Boolean} 
addTask(task: Task): Task
removeTask(id: GUID): Void
updateTask(task: Task): Task
listTasks(pagination: Pagination): Task[]


如果在API優先方法中,產品經理將定義 TODO 列表的功能,同時考慮超出即時需求的各種用例,並與競爭對手提供的 API 進行比較。然後,這些功能將被制定為任何人都可以使用的 API。在這種情況下,該 API 應該是這樣的:

Task { id: GUID, content: String, done: Boolean, created_date: Date, updated_date: Date } 
addTasks(tasks: Task[]): Task[]
removeTask(id: GUID): Void
updateTask(task: Task): Task
listTasks(pagination: Pagination, filter: Filter): Task[]
events:
onTaskCreated
onTaskUpdated
onTaskRemoved



新的API與以前的 API 有何不同?
  • 新增了建立和更新的日期
  • 能夠在一個“全部新增”中新增多個任務
  • 列表新增了過濾功能
  • 新增了事件

現在,顯然您可以考慮更多功能,例如將內容更改為 RichText,但具體新增上述功能並不會強制產品支援作為 UI 一部分的其他功能(如 RichText 所需要的),但它們確實提供了超越只需要一個簡單的 TODO 列表。

詳細點選標題

API first 是一種很好的方法,可以輕鬆地進行內部和外部整合。然而,它需要技術工具來協助這個過程,員工的思想轉變,以及隨著時間的推移這將為您的公司提供巨大價值的理解。

 

相關文章