SDK和API的區別

2022-07-16 06:48:10 字數 1110 閱讀 6080

講個小故事:研發人員a開發了軟體a,研發人員b正在研發軟體b。 有一天,研發人員b想要呼叫軟體a的部分功能來用,但是他又不想從頭看一遍軟體a的原始碼和功能實現過程,怎麼辦呢? 研發人員a想了乙個好主意:我把軟體a裡你需要的功能打包好,寫成乙個函式。你按照我說的流程,把這個函式放在軟體b裡,就能直接用我的功能了!其中,api就是研發人員a說的那個函式。

日常生活中,我們有很多類似api的場景,比如:

電腦需要呼叫手機裡面的資訊,這時候你會拿一根資料線將電腦手機連線起來,電腦和手機上連線資料線的介面就相當於「api介面」。如圖所示:

那sdk又是什麼?

sdk 就是 software development kit 的縮寫,翻譯過來——軟體開發工具包。這是乙個覆蓋面相當廣泛的名詞,可以這麼說:輔助開發某一類軟體的相關文件、範例和工具的集合都可以叫做sdk。sdk被開發出來是為了減少程式設計師工作量的。

比如——有公司開發出某種軟體的某一功能,把它封裝成sdk(比如資料分析sdk就是能夠實現資料分析功能的sdk),**給其他公司做開發用,其他公司如果想要給軟體開發出某種功能,但又不想從頭開始搞開發,直接付錢省事。

現在可以談談api和sdk的區別了。

總的來說,兩者沒有值得比較的區別,因為是具有關聯性的兩種東西。你可以把sdk想象成乙個虛擬的程式包,在這個程式包中有乙份做好的軟體功能,這份程式包幾乎是全封閉的,只有乙個小小介面可以聯通外界,這個介面就是api。比如——我們現在要在企業erp系統中增加某個功能(比如自動備份、資料分析、雲儲存等),但又不想耗費大量時間、也沒那麼多研發親自去做這個功能。這時我們可以選擇使用這個「sdk」軟體包,把erp系統連線上api介面,就可以使用sdk軟體包裡的功能。

最後,貼近生活講講兩者的關係:

有一杯密封飲料,它的名字叫做「sdk」。飲料上插著吸管,吸管的名字叫「api」。把你叫做「xx系統」。如果你想喝到sdk裡的飲料(讓系統擁有sdk中的功能),你必須通過api這根吸管來實現(通過api連線你的系統和sdk工具包),否則你就喝不到飲料。所以:sdk=放著你想要的軟體功能的軟體包api=sdk上唯一的介面

sdk 和 api 的區別??????

定義 1 api 2 sdk sdk software development kit 中文是 軟體開發工具組 由一系列的工具組合在一起,編輯器裡敲 的時候它會自動補全 自動錯誤檢查等 區別 sdk 包含了使用 api 的必需資料。sdk是開發工具提供商提供的,而api是統一定的系統 作業系統或專用...

API和SDK的區別

隨著軟體規模的日益龐大,常常需要把複雜的系統劃分成小的組成部分,程式設計介面的設計十分重要,程式設計的實踐中,程式設計介面的設計首先要使軟體系統的職責得到合理劃分,良好的介面設計可以降低系統各部分的相互依賴,提高組成單元的內聚性,降低組成單元間的耦合程度,從而提高系統的維護性和擴充套件性。api是介...

API和SDK的區別

1 api是什麼 2 sdk是什麼 sdk全稱software development kit,軟體開發工具包。一般都是一些軟體工程師為特定的軟體包 軟體框架 硬體平台 作業系統等建立應用軟體時的開發工具的集合。通俗來講就是第三方服務商提供的實現產品軟體某項功能的工具包。再來舉個粟子 老闆讓胖虎來完...