文章

目前顯示的是 一月, 2013的文章

API ? SDK? 傻傻分清楚

API (Application Programming Interface) 翻譯成中文就是"應用程式介面",其實這樣翻譯不太直觀。 翻譯為介面,顧名思義就要溝通兩隻不同的東西用的,通常由一組函式所組成。 在同一個平台下的兩個不同東西(程式 or 系統),能取用對方的功能等等, 所以一個 X程式 寫了一組函式,讓同一平台的其他程式取用 X程式 的功能, 那組函式就可以說是那個 X程式or 某個函式庫,對外開放的 API。 甚至是系統呼叫, 因為作業系統的任務就是管理好電腦的各種資源,所以程式需要資源時必須跟作業系統溝通,申請使用某某功能等等,稱為系統呼叫(調用)。 系統呼叫的時候也是取用OS作業系統提供的API。 例如:我要在 自己的網頁 加入google map提供的功能,就使用"google map API" SDK (Software Development Kit) 翻譯成中文就是"軟體開發工具組" 是用來幫一個 產品 或 平台 開發應用程式的工具組,由產品的廠商提供給開發者使用的。 通常是 某一家廠商 針對某一 平台 或 系統 或 硬體 所發佈出來用以開發應用程式的工具組, 在這個工具包裡面,可能包含了各式各樣的開發工具,模擬器等。 例如:給 Android平台 使用的 Android SDK 就是用來開發 Android系統上面的應用程式。 通常SDK(開發者工具包) 裡也會帶有很多 API ,用來調用一些系統平台程式提供的功能 例如說:視窗顯示,圖形特效等等。 以下舉一個實際例子來說明,調用系統程式功能的API 是怎麼一回事 開發Windows應用程式的SDK(開發者工具包) 裡就包含 Win32 API 說明: Win32 API 是一個函式庫,可以給 Windows應用程式 調用 Windows系統的功能 在PTT看到有人問了差異性,我的看法是 SDK是用來開發某一個平台的程式的工具包,API 是讓同一平台下的程式取用它的功能的函式庫。了解差異之後,應該就可以理解實際狀況會是:「SDK裡面有平台的API」 今天在FB上看到: API就是皮卡丘,提供鋼鐵尾巴 跟 雷電 兩種技能給你呼叫,基本上你不用研究皮卡為什麼皮卡丘會發電,