軟件開(kāi)發(fā)工具包(Software Development Kit, SDK)一般是一些被軟件工程師用于為特定的軟件包、軟件框架、硬件平臺(tái)、作業(yè)系統(tǒng)等創(chuàng)建應(yīng)用軟件的開(kāi)發(fā)工具的集合。
它或許只是簡(jiǎn)單的為某個(gè)編程語(yǔ)言提供應(yīng)用程序接口的一些文件,但也可能包括能與某種嵌入式系統(tǒng)通訊的復(fù)雜的硬件。一般的工具包括用于調(diào)試和其他用途的實(shí)用工具。SDK還經(jīng)常包括示例代碼、支持性的技術(shù)注解或者其他的為基本參考資料澄清疑點(diǎn)的支持文檔。
軟件工程師通常從目標(biāo)系統(tǒng)開(kāi)發(fā)者那里獲得軟件開(kāi)發(fā)包。為了鼓勵(lì)開(kāi)發(fā)者使用其系統(tǒng)或者語(yǔ)言,許多SDK是免費(fèi)提供的。SDK經(jīng)常可以直接從互聯(lián)網(wǎng)下載。有時(shí)也被作為營(yíng)銷(xiāo)手段。例如,甲產(chǎn)品或許會(huì)免費(fèi)提供構(gòu)件SDK以鼓勵(lì)人們使用它,從而會(huì)吸引更多人由于能免費(fèi)為其編程而購(gòu)買(mǎi)其構(gòu)件。
SDK可能附帶了使其不能在不兼容的許可證下開(kāi)發(fā)軟件的許可證。例如一個(gè)專(zhuān)有的SDK可能與自由軟件開(kāi)發(fā)抵觸。而GPL能使SDK與專(zhuān)有軟件開(kāi)發(fā)近乎不兼容。LGPL下的S...