Loading...

API 是 Application Programming Interface 的縮寫,API中文是「應用程式介面」。在電腦程式設計裡,應用程式介面 (API) 是用於打造應用程式軟體的一組副程式定義、協定與工具。

API 是指各種軟體組件之間一套明確定義的溝通方法。好的 API 提供模塊,並且由工程師將它們組合在一起,如此一來讓寫程式變得更簡單。

API 的使用者是「能夠寫程式的開發者」,開發者可以透過 API 去使用其他人撰寫的應用程式。

訂閱電子報,瞭解更多技術新知,程式開發心法、自學資源、市場趨勢、業界動態與職涯資訊

什麼是介面?

在解釋「應用程式介面」之前,我們先感受一下「介面」這兩個字,讓我們來看一個生活中使用 ATM 提款機時的情境:

  1. 使用者將提款卡插入提款機,然後輸入密碼。
  2. 螢幕跳出訊息詢問使用者是要轉帳、存款還是提款?
  3. 使用者點選了提款功能,並輸入提款金額。
  4. 吐鈔口吐出鈔票,然後列印出交易明細。

提款機是一種可互動的介面。使用者在操作時不需了解機器如何驗證身份、如何和其他銀行交換資料、甚至是提款機內有多少鈔票,所有的運作原理都被包裝在提款機裡面,使用者只需透過互動介面就能操作、使用提款機。

舉另外兩個例子,開汽車時的操作介面可能是方向盤、油門:

煮咖啡時的介面是操作面板:

你可以透過操作介面來使用機器的功能,因為機器開放了這些介面給你使用,而機器沒有開放的部分,例如汽車內部的引擎運作,只有能把汽車拆開來維修的師傅知道如何處理。

想成為了解API的網頁開發工程師,3 分鐘小測驗,找到你的學習起點

API 應用程式介面

在軟體世界中,API 扮演了與上述類似的角色,使用者可以透過 API 使用應用程式的功能,但不需要碰觸到程式的內部運作。

API有什麼應用?學會串接 Web API

再次強調,API 的使用者是「能夠寫程式的開發者」,舉例來說,美食平台的開發者想在餐廳資訊旁附上地圖資訊,若有能力,他可以自行開發地圖系統,但一般人沒有足夠的資源和精力這麼做,多半會選擇串接 Google Map API:

領取課程優惠碼,累積更多技術能力,包括 JS 觀念與實作、網頁切版、RWD、Bootstrap、DOM 等技術網頁開發技術

Google 公司開發了 Google Map 提供給大眾使用,同時他們也開發了一系列的 Google Map API 給開發者使用。開發者可以在 Google 提供的 Google Map API 說明文件 (如下圖右) 裡查看 API 的使用說明,並且按照文件將地圖串接到自己的網站上:

只要用指定的方式發出請求 (request),將餐廳地址成功發送給 Google Map API,Google Map 就會回應 (response) 地圖資訊:

因此,你不需要蒐集一個地圖資料庫,就能讓你的網站擁有地圖功能。

上述是請求「第三方 API」的例子,API 也有可能是團隊內部合作的工具,例如後端工程師與前端工程師透過 API 來合作,因此能各自管理各自的程式碼,事半功倍地完成成果且減少失誤。

學習軟體開發實務、用 AJAX 串接第三方 API,申請試讀、瞭解更多內容