先說(shuō)一下DLL,再實(shí)例演示怎么創(chuàng)建一個(gè)DLL項(xiàng)目:
在Windows下,DLL(DLL,Dynamic Link Library,動(dòng)態(tài)鏈接庫(kù))是一個(gè)被編譯過(guò)的二進(jìn)制程序,但與后綴名為.exe的程序不同,DLL不能獨(dú)立運(yùn)行,必須由其他程序調(diào)用。
為什么有這東西呢?當(dāng)然有其存在的好處啦:
1. 可以用多種編程語(yǔ)言來(lái)寫。
我們可以用自己熟悉的語(yǔ)言寫DLL,然后由其他語(yǔ)言寫的可執(zhí)行程序來(lái)調(diào)用這些DLL。例如,可以用Python寫程序的主界面,然后調(diào)用C寫的實(shí)現(xiàn)一個(gè)具體功能的DLL模塊。
2. 增強(qiáng)產(chǎn)品的功能。
我們看到許多產(chǎn)品都提供了界面插件功能,允許用戶動(dòng)態(tài)地更換程序的界面,這就可以通過(guò)更換界面DLL來(lái)實(shí)現(xiàn)。
3. 簡(jiǎn)化項(xiàng)目管理。
在一個(gè)大型項(xiàng)目開(kāi)發(fā)中,通常都是由多個(gè)項(xiàng)目小組同時(shí)開(kāi)發(fā)。我們可以將項(xiàng)目細(xì)分,將不同功能交由各項(xiàng)目小組以多個(gè)DLL的方式實(shí)現(xiàn),這樣,各個(gè)項(xiàng)目小組就可以同時(shí)進(jìn)行開(kāi)發(fā)了。例如我們學(xué)校2D機(jī)器魚項(xiàng)目就讓我們寫DLL。
4. 可以節(jié)省磁盤空間和內(nèi)存。
如果多個(gè)應(yīng)用程序需要同樣的功能,那么可以將該功能以DLL的形式提供,這樣在機(jī)器上只需要存在一份該DLL文件就可以了。另外,如果多個(gè)應(yīng)用程序使用同一個(gè)DLL,該DLL只需要放入內(nèi)存一次,所有的應(yīng)用程序就都可以共亨它了。
另外,在Linux環(huán)境下沒(méi)有.dll,但也有類似的,對(duì)應(yīng)的文件后綴名一般是.so(Share Object),可以看作同一個(gè)東西的不同稱呼。
這里一共就只寫了三篇文章,轉(zhuǎn)移陣地了 → 知乎專欄:【編程喵的學(xué)習(xí)筆記】 or 微信公眾號(hào):【一只編程喵】
更多建議: