----原答案----
舉個例子:
在這裡,乙個簡單的功能鏈條我將它分為三個組成部分:
1、客戶端組裝資料
2、客戶端使用組裝的資料來請求服務端(或者作業系統)的 api
3、服務端(或者作業系統)的 api 處理資料並返回處理結果
結合這個鏈條得出結論:
1、api為細粒度的功能介面
2、sdk包含第2、3步
3、sdk為api的集合
----2019.03.21更新----
應觀眾要求,再白話一點,可能有不嚴謹的地方,大概是這麼個意思:
比如需要實現乙個獲取使用者資訊的功能。
大王實現乙個api(可以通過傳遞引數(token)來獲取使用者資訊。如果小王要使用這個api,需要寫如下**(php示例):
function getuserinfo($token)
$host = 'api.sunxuefeng.com';
$param = ['token' => $token];
$userinfo = curl($host, $param, 'get');
return $userinfo;
}
這樣小王就可以使用大王提供的api了。但是小王這人比較懶,要求大王給他提供乙個sdk來搞定這個功能。
然後大王就把上面的**(sdk)發給小王,讓他呼叫這個函式,傳遞乙個 token 進來就可以獲取到使用者資訊。
----2019.04.08更新----
狹義的說法,在實際工作中,
如果對方需要你提供乙個api,是指乙個工程提供給另外乙個工程的介面(一般是基於http協議)。
如果對方需要你提供乙個sdk,是指基於對方工程的程式語言,提供乙個**包。在這個**包中,你可以呼叫作業系統的介面,可以呼叫其他系統的介面,或者什麼都不呼叫,都與對方無關。
關於sdk和api有什麼區別
原答案 舉個例子 在這裡,乙個簡單的功能鏈條我將它分為三個組成部分 1 客戶端組裝資料 2 客戶端使用組裝的資料來請求服務端 或者作業系統 的 api 3 服務端 或者作業系統 的 api 處理資料並返回處理結果 結合這個鏈條得出結論 1 api為細粒度的功能介面 2 sdk包含第2 3步 3 sd...
MFC SDK和API有什麼區別
mfc sdk和api有什麼區別 mfc microsoft foundation class 微軟函式類庫 sdk software development kit,軟體開發包 軟體開發包通常是一系列api函式,而mfc 是由微軟公司提供的對api封裝後的類庫,因此從這個意義上可以說mfc是sdk...
API和Web服務測試之間有什麼區別?
開發人員可以建立或使用多種方法使應用程式可以來回通訊。當然,qa人員必須評估軟體的這些重要元件。api和web服務都是應用程式交換資料的兩種方式。但是,api和web服務測試是不同的工作。為了有效地測試每個元件,需要了解它如何符合應用程式的模型,並使用全面的qa方法,從壓力測試到安全掃瞄再到功能測試...