2011-07-22 43 views
5

我正在一個大的C#項目,我想知道爲什麼人們在他們的應用程序中使用DLL。我知道一個DLL文件(請糾正,如果我錯了)包含一些功能,但爲什麼我們不把這些功能在我們的主要C#應用程序?c#:爲什麼使用DLLs?

感謝

+4

http://stackoverflow.com/questions/484452/what-is-a-dll – AndrewC

+3

爲什麼使用函數?爲什麼我們不把所有這些語句放在'Main()'中?爲什麼要使用類? .... –

回答

17

大部分是在回答to this question總結出來的,但基本的理由是「這樣你就不必重複代碼」。

+0

+1。你擊敗了我。 – David

+0

現貨。將允許您跨多個項目重用您的代碼。 – AndrewC

+0

是的......打敗我吧。代碼重用。 – WernerCD

8

代碼重用。通常,dll文件包含的功能在多個應用程序中很有用,並且將它們放在單個編譯文件中比複製所有代碼要容易得多。

8

可移植性,可重用性,模塊化。

拆分類型等等,爲獨立的組件,可以重複使用在不同的項目的類型,保持這些類型的模塊化的方式(例如更新只是一個組件,而不是整個應用程序),並與他人代碼的共享部分。

它還允許您將常用功能分組到一個包中。

6

可維護性。當您需要修復一個錯誤時,您可以只發布包含該修復的DLL,而不必重新發布整個應用程序。

0

可擴展性 - 許多插件框架使用DLLs/Assemblies插件。

0

dll:動態鏈接庫: 它是一個庫。它包含一些功能和數據。 我們在哪裏使用這些功能? 我們在另一個應用程序或程序中使用dll內部的這些函數和數據。 最重要的是,dll不會被加載到內存中,當它需要的時候,它會被加載到內存中。

0

其中一個最好的用途是,只需引用dll,就可以將許多第三方功能集成到您的應用程序中,無需在系統中使用每個第三方工具/應用程序。 例如,您需要通過代碼通過MS Outlook發送會議邀請,因爲這隻需將您的應用程序中MS Outlook提供的dll引用到您的應用程序中,然後您就可以開始編寫自己的代碼了!