簡要介紹什麼是SDK,DLL與LIB區別聯絡

2021-03-31 20:31:26 字數 1115 閱讀 9582

經常會在技術論壇裡面看到類似這樣的帖子:"什麼是 sdk?","請高手講一下 sdk 是什麼東東?"......

其實很簡單,sdk 就是 software development kit 的縮寫,中文意思就是"軟體開發工具包"。這是乙個覆蓋面相當廣泛的名詞,可以這麼說:輔助開發某一類軟體的相關文件、範例和工具的集合都可以叫做"sdk"。具體到我們這個系列教程,我們後面只討論廣義 sdk 的乙個子集——即開發 windows 平台下的應用程式所使用的 sdk。

呵呵,其實上面只是說了乙個 sdk 大概的概念而已,理解什麼是 sdk 真有這麼容易嗎?恐怕沒這麼簡單!為了解釋什麼是 sdk 我們不得不引入 api、動態鏈結庫、導入庫等等概念。^_^,不要怕,也就是幾個新的名詞而已,我也是到了大學快結束的時候才體會到其實學習新知識就是在學習新名詞、新概念和新術語。

dll(又是乙個縮寫,感覺 it 這個行業裡三字頭縮寫特別多),即 dynamic link library(動態鏈結庫)。我們經常會看到一些 .dll 格式的檔案,這些檔案就是動態鏈結庫檔案,其實也是一種可執行檔案格式。跟 .exe 檔案不同的是,.dll 檔案不能直接執行,他們通常由 .exe 在執行時裝入,內含有一些資源以及可執行**等。其實 windows 的三大模組就是以 dll 的形式提供的(kernel32.dll,user32.dll,gdi32.dll),裡面就含有了 api 函式的執行**。為了使用 dll 中的 api 函式,我們必須要有 api 函式的宣告(.h)和其導入庫(.lib),函式的原型宣告不難理解,那麼導入庫又是做什麼用的呢?我們暫時先這樣理解:導入庫是為了在 dll 中找到 api 的入口點而使用的。

所以,為了使用 api 函式,我們就要有跟 api 所對應的 .h 和 .lib 檔案,而 sdk 正是提供了一整套開發 windows 應用程式所需的相關檔案、範例和工具的"工具包"。到此為止,我們才真正的解釋清楚了 sdk 的含義。

由於 sdk 包含了使用 api 的必需資料,所以人們也常把僅使用 api 來編寫 windows 應用程式的開發方式叫做"sdk 程式設計"。而 api 和 sdk 是開發 windows 應用程式所必需的東西,所以其它程式設計框架和類庫都是建立在它們之上的,比如 vcl 和 mfc,雖然他們比起"sdk 程式設計"來有著更高的抽象度,但這絲毫不妨礙它們在需要的時候隨時直接呼叫 api 函式。

git簡要介紹與使用

git是一種分布式版本控制工具 安裝完成後會生成三個快捷方式 配置 git的配置都是以檔案形式儲存的,具體檢視和位置如下 系統配置檔案 git etc gitconfig 使用者配置檔案都儲存在 userprofile gitconfig 檢視所有配置 git config l 檢視系統配置 git...

FinalHttp的簡要介紹與使用

在之前的一篇文章中,我們簡單的介紹了下finalbitmap的使用,這一篇文章將繼續介紹afinal開發框架的使用,這一次的主角是finalhttp。finalhttp,顧名思義,就是乙個用於實現客戶端與伺服器之間網路通訊的類,這個類主要通過對apache的httpclient開源專案進行封裝,實現...

定義介紹 什麼是REST

rest架構風格是全新的針對web應用的開發風格,是當今世界最成功的網際網路超 分布式系統架構,它使得人們真正理解了http協議本來面貌。隨著 rest架構成為主流技術,一種全新的網際網路網路應用開發的思維方式開始流行。rest是什麼 rest是英文representational state tr...