<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

API、SDK是什么?SDK和API的區別

算法與數據結構 ? 來源:知乎 ? 作者:簡道云 ? 2022-10-04 15:35 ? 次閱讀

不知道區別的人,大概率是你還沒搞懂 API、SDK 是什么。 講個小故事:

研發人員A開發了軟件A,研發人員B正在研發軟件B。 有一天,研發人員B想要調用軟件A的部分功能來用,但是他又不想從頭看一遍軟件A的源碼和功能實現過程,怎么辦呢? 研發人員A想了一個好主意:我把軟件A里你需要的功能打包好,寫成一個函數。你按照我說的流程,把這個函數放在軟件B里,就能直接用我的功能了! 其中,API就是研發人員A說的那個函數。

這就是API的誕生。 日常生活中,我們有很多類似API的場景,比如:

電腦需要調用手機里面的信息,這時候你會拿一根數據線將電腦手機連接起來,電腦和手機上連接數據線的接口就相當于“API接口”。如圖所示:

b5aa6050-3eee-11ed-9e49-dac502259ad0.jpg

那SDK又是什么? SDK 就是 Software Development Kit 的縮寫,翻譯過來——軟件開發工具包。這是一個覆蓋面相當廣泛的名詞,可以這么說:輔助開發某一類軟件的相關文檔、范例和工具的集合都可以叫做SDK。 SDK被開發出來是為了減少程序員工作量的。 比如—— 有公司開發出某種軟件的某一功能,把它封裝成 SDK(比如數據分析 SDK 就是能夠實現數據分析功能的SDK),出售給其他公司做開發用,其他公司如果想要給軟件開發出某種功能,但又不想從頭開始搞開發,直接付錢省事。 現在可以談談 API 和 SDK 的區別了。 總的來說,兩者沒有值得比較的區別,因為是具有關聯性的兩種東西。 你可以把SDK想象成一個虛擬的程序包,在這個程序包中有一份做好的軟件功能,這份程序包幾乎是全封閉的,只有一個小小接口可以聯通外界,這個接口就是API。 比如—— 我們現在要在企業 ERP 系統中增加某個功能(比如自動備份、數據分析、云存儲等),但又不想耗費大量時間、也沒那么多研發親自去做這個功能。這時我們可以選擇使用這個“SDK”軟件包,把 ERP 系統連接上 API 接口,就可以使用 SDK 軟件包里的功能。

舉個實例輔助理解:

【中鐵大橋科研院】有一個自研的信息平臺,用于管理業務數據。 但他們曾面臨一個問題——盡管有信息平臺,卻因為系統的獨立性,數據的上傳和備份,需要依靠人工在 excel 里來回操作,效率很低。 由于系統的開發周期長、成本高,橋科院將目光聚焦到現成的功能軟件上。 后來通過 API 將簡道云直接插入公司數據庫,數據可自動上傳至信息平臺上并統一展示;再通過 webhook 把數據推送到服務器,實現自動備份。

b5e2b054-3eee-11ed-9e49-dac502259ad0.jpg

API將信息平臺與簡道云相連 在這一過程中,簡道云扮演的角色就是 SDK,而簡道云配備 API 接口,可以對接外部系統,讓橋科院不用開發直接實現了數據自動上傳、備份的功能。 最后,貼近生活講講兩者的關系: 有一杯密封飲料,它的名字叫做“SDK”。 飲料上插著吸管,吸管的名字叫“API”。 把你叫做“XX系統”。 如果你想喝到 SDK 里的飲料(讓系統擁有 SDK 中的功能),你必須通過 API 這根吸管來實現(通過 API 連接你的系統和 SDK 工具包),否則你就喝不到飲料。 所以: SDK=放著你想要的軟件功能的軟件包 API=SDK上唯一的接口 不知道你這次真的懂了沒?

編輯:黃飛

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • API
    API
    +關注

    關注

    2

    文章

    1420

    瀏覽量

    61163
  • SDK
    SDK
    +關注

    關注

    3

    文章

    980

    瀏覽量

    45010

原文標題:SDK 和 API 的區別是什么?

文章出處:【微信號:TheAlgorithm,微信公眾號:算法與數據結構】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Power Optimization SDK介紹之Static API

    power方式分別是動態接口和靜態接口。 Power Optimization SDK的特點如下:(1)在算法級別上對電源管理API的細粒度訪問。(2)訪問請求受整個系統工作負載約束的影響。(3)支持CPU
    發表于 09-27 11:58

    FX3 ez-u*** SDK提供API初始化GPIO,使用API中的SPI相關功能無法使用

    FX3 EZ USB SDK提供API初始化GPIO,使用SPI相關函數在API中不能使用,現在有解決方案嗎? 以上來自于百度翻譯 以下為原文FX3 ez-u*** SDK prov
    發表于 01-02 16:30

    SDK、API、Open API有什么區別(iot開發平臺)

    、數據采集、設備遠程監控、用戶賬號管理、設備綁定管理和數據統計分析等技術能力,幫助廠商和開發者迅速構建各類IoT設備,甚至是進行設備管理和經銷商等功能。[ SDKAPI區別]SDK
    發表于 07-09 15:32

    SDK、API、Open API有什么區別(iot開發平臺)

    、數據采集、設備遠程監控、用戶賬號管理、設備綁定管理和數據統計分析等技術能力,幫助廠商和開發者迅速構建各類IoT設備,甚至是進行設備管理和經銷商等功能。[ SDKAPI區別]SDK
    發表于 07-09 19:17

    SDKAPI相關資料推薦

    從官方例程深度學習海思SDKAPI-第2/11季視頻課程 互聯網課程品牌《...
    發表于 12-23 07:57

    OpenHarmony SDK只支持API8和API9嗎?

    1、OpenHarmony SDK api版本只支持8和9么,真機是6種情況是不是不能使用openharmony調試了呢?2、HarmonyOS Legacy SDK 與OPenharmony
    發表于 04-26 10:57

    OpenHarmony 應用開發SDK、API 與基礎工具

    API,而不需要下載多個 SDK。對于某些設備不支持的 API 的情況,開發者可通過 canIUse() 函數判斷。 隨著時間的推移,鴻蒙系統會發布新的版本,每個版本都會有配套的 API
    發表于 09-19 15:45

    SDK API Reference Manual LPC546x

    SDK API Reference Manual LPC546xx,用戶手冊
    發表于 03-17 08:29 ?33次下載

    人體行為識別API接口aip-php-sdk-4.15.4

    人體行為識別API接口aip-php-sdk-4.15.4
    發表于 08-31 09:46 ?3次下載

    SDKAPI區別是什么?

    SDK 就是 Software Development Kit 的縮寫,翻譯過來——軟件開發工具包。這是一個覆蓋面相當廣泛的名詞,可以這么說:輔助開發某一類軟件的相關文檔、范例和工具的集合都可以叫做SDK。
    的頭像 發表于 03-18 09:36 ?2192次閱讀

    ESP8266 Non OS SDK API參考

    電子發燒友網站提供《ESP8266 Non OS SDK API參考.pdf》資料免費下載
    發表于 09-23 11:49 ?1次下載
    ESP8266 Non OS <b class='flag-5'>SDK</b> <b class='flag-5'>API</b>參考

    ESP8266 RTOS SDK API參考(僅針對舊版SDK V2.X及之前版本)

    電子發燒友網站提供《ESP8266 RTOS SDK API參考(僅針對舊版SDK V2.X及之前版本).pdf》資料免費下載
    發表于 09-23 10:10 ?0次下載
    ESP8266 RTOS <b class='flag-5'>SDK</b> <b class='flag-5'>API</b>參考(僅針對舊版<b class='flag-5'>SDK</b> V2.X及之前版本)

    SDKAPI 在視頻環境中的區別

    現在,視頻API 或視頻SDK 不一定是每個工具本身的一個類別。相反,它們是創建的APISDK,旨在幫助您與并非從頭開始構建的視頻平臺進行交互和擴展。
    發表于 11-25 09:34 ?514次閱讀

    機器視覺軟件開發SDK的注意事項介紹

    由于 SDK 包含了使用 API 的必需資料,所以人們也常把僅使用 API 來編寫 Windows 應用程序的開發方式叫做“SDK 編程”。
    的頭像 發表于 04-26 10:47 ?1364次閱讀

    ESP8266 Non-OS SDK API參考

    電子發燒友網站提供《ESP8266 Non-OS SDK API參考.pdf》資料免費下載
    發表于 09-18 10:08 ?5次下載
    ESP8266 Non-OS <b class='flag-5'>SDK</b> <b class='flag-5'>API</b>參考
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>