SDK 和 API 的區別是什麼?

時間 2021-05-06 08:54:10

1樓:知之為知之

知乎故事會看似讓你「簡單明瞭」地理解了,但其實對你以後的精深不利,建議此類問題還是到IT技術交流平台去尋找答案吧,如CSDN

2樓:

我心裡是這麼理解的API本質上是乙個介面,是乙個抽象概念,本質上來說是乙個交流規範。

而SDK則是相對介面的實現,同一套API下可以有不同的SDK。

打個比方Kafka, Redis這樣的中介軟體他的API是固定的,但是會有相對不同語言的實現甚至同一語言下的不同實現,其內部會有不同的功能。

3樓:Jacy

我的理解是:

api可以在不同的程式,不同的端,不同的服務之間呼叫乙個函式的規則sdk是乙個一堆函式,也就是一堆api

另外不同點:api因為可以跨服務也可以不跨服務所以不用把實現引入自己的專案中,比如前端呼叫後台,但是sdk則不行,需要把包引入當前專案,這時候sdk也提供api,但此時就跟你專案裡的工具函式一樣

所以經常安裝什麼安裝sdk,什麼ocr SDK之類的,從這個方面我覺得node_module的包效果其實和sdk一樣

以上只是我在使用中感受出來的區別,對於理論上只是淺顯看了一下。

4樓:阿柴本柴

舉個例子,公司 A 有乙個影象轉文字的功能,你想要使用這個功能,所以公司 A 將這個功能通過 API 提供給你,你可以呼叫 API,把影象發給公司 A,然後就能獲取轉換後的文字。

這個 API 的呼叫可能有些繁瑣,比如呼叫 API 要求傳入特定格式的引數,以特定的協議傳送給公司 A,這個過程公司 A 幫你實現了,封裝在 SDK 當中,你只需要在程式中使用這個 SDK,就能大大簡化呼叫 API 的過程。

5樓:黑洞電網

以python為例,假如你現在要釀高粱酒,你可以:

先呼叫乙個包裡的「罈子」類生成乙個酒罈;

再呼叫「放入原材料」函式,「原材料」引數傳「高粱」

再呼叫乙個包裡的「製麴」函式進行曲的製作

再呼叫「發酵」函式進行發酵

最後呼叫「蒸餾」函式進行蒸餾。

上面你呼叫的所有東西都是API。

假如你現在想開一家飲料店,不僅做酒,還做其他飲料比如橙汁、奶茶等。而製作這些飲料工藝不同,又要呼叫一堆別的API,太麻煩。於是你突發奇想,我能不能到市面上看看有沒有已經寫好的「釀酒」的包,傻瓜式操作,買過來嵌入到我的「飲料店」系統之中直接用不就行了。

這種已經寫好的包就是SDK。

SDK和API差別太明顯,根本不是乙個東西。SDK和package有的時候會分不清,其實SDK也可以認為是一種package。各語言的定義也有差別,python裡一般認為必須要有__init__.

py才能叫package。

6樓:快遞鳥API

API=應用程式程式設計介面

SDK=軟體開發工具包

舉例:快遞鳥API 快遞鳥快遞單號查詢介面,企業級快遞物流下單介面【快遞鳥API官網】

7樓:天眼數聚

你可以把SDK想象成乙個虛擬的程式包,在這個程式包中有乙份做好的軟體功能,這份程式包幾乎是全封閉的,只有乙個小小介面可以聯通外界,這個介面就是API。

總的來說,兩者沒有值得比較的區別,因為是具有關聯性的兩種東西。

8樓:知乎一生黑

API 即開發商(如手機製造商)提供給第三方(如使用者)的介面(插口),如手機上的充電介面、耳機插孔等都是 API。乙個 API 可以實現乙個到多個功能,比如充電和資料傳輸共用同乙個資料介面,甚至能用來傳輸音訊。而 SDK 是什麼呢?

SDK 相當於手機包裝盒中除手機之外的東西,包括使用說明書,還有可能包括耳機、資料線、充電頭等配件。SDK 包括文件,也就是 API 的規範(介面長什麼樣)和用法(介面是幹什麼用的),有時還有相關的示例(原裝配件)以便使用者測試或使用該 API。

9樓:

sdk,是外掛程式,對外暴露一些api,讓其他人能夠呼叫使用其中方法

api,是應用介面,其他人能夠呼叫使用其中方法

通俗點講,sdk就是把api打包成乙個外掛程式,讓別人可以簡單整合,呼叫對外暴露的api

10樓:Xi Yang

顧名思義,SDK是一整套東西,API只是只裡面的介面。

啥是介面?開發者在文件裡和你約定怎樣呼叫會產生怎樣的效果,僅此而已。

11樓:宸骨頭

之前一直不太懂客戶提的API 和SDK的廣告需求,看完大家的解釋多少有點了解了。API是乙個介面,可以讀取到資料等多方面的資訊;SDK的話是乙個開發工具,這個成本比較高,但一般不會外洩資料等資訊。

12樓:開心僧

sdk(software development kit)按照字面理解是軟體開發工具。在遊戲裡面常被用來做引數效驗,簽名簽證等的工具。

而API就是應用程式程式設計介面。。乙個是工具,乙個是介面。。

sdk和open api有什麼區別?

摩字 SDK是封裝好的產品,有各種程式語言的版本,你選擇與自己語言一致的SDK,直接用。當然因為是別人封裝的,所以你可以達成你的使用目的,別人也可以完成別人的暗任務。所以對於安全性要求高的系統,最好不要直接用別人的SDK。API是組裝產品的一堆零件,你要根據開發者的對接文件,把零件乙個乙個連起來,裝...

和 的區別是什麼?

涼舟 哪一位 誰 彼女 她是哪一位 彼女 誰 她是誰誰 就不清楚是什麼人了 這個人是未知 性別也是未知 彼女有指向性 大概知道這個人 所以這個成分就不成立。 一墨君 我們可以稱它們為萬能指代詞,因為 家族的指代詞既可以指代人又可以指代物體還可以指代地點,而且非常禮貌。而 則只有誰的意思,是 的禮貌用...

和 的區別是什麼?

小王同學在積累 表示主語的助詞。表示主語的助詞,還可以與其他表示地點 時間等助詞結合,還可以表示強調。1.用於體詞後面的助詞。2.如果體詞以子音結尾用 3.如果體詞以母音結尾用 例句 首爾是南韓的首都。我是南韓人。注釋 有時,表示對比或強調。例句 妹妹個子高,我個子矮。我喜歡肉,不喜歡魚。注釋 可以...