網頁設計小知識:API設計和應用程式設計有什麼不同?
API 的使用者通常是程式設計者,而應用程式的使用者通常是一般使用者。
因為這個差別,API通常需要有說明文件來解釋如何運用。
正因為「使用者」對象不同了,所以 API在 設計上就必須考量應用程式設計者的需求。
舉例來說,API的函數命名就變得很重要,若是命名上對程式設計者不好理解、不一致,就會造成學習或運用上的困難。
當然,除了因為使用者不同而有不同的需求考量,API的生存周期相對於應用程式來說,也較來得長。
不過API是應用程式的「介面」。在本質上已與應用程式分離,因為這樣的特質,使得API可以跟應用程式平行發展,只要介面保持不變,即使實作不斷變化,也不會影響應用程式中的客戶端程式碼。
但是我們需要特別注意一件事情,那就是更改API的介面必須謹慎並留意相容性!
舉例來說,假如應用程式就像是整個車體,而API就如同車輪。不管汽車的外型如何改變,只要輪子可以正常運作就可以開車上路,但如果車輪變成方的,那麼就會有使用上的困難了。
因此,一旦API定案,應用程式就會倚賴這組API開發,之後要變動API就會有較高的代價。所以在選擇使用的API,又或是設計API時,最好多花時間思考如何設計、規劃整體的應用程式,才能減少日後開發應用程式上的困難。