DLL a EXE v .Net

Anonim

DLL vs EXE v.Net

Při programování v.NET máte možnost vybrat, zda chcete vytvořit EXE nebo DLL. Tyto dva obsahují spustitelný kód, ale existuje rozdíl mezi DLL a EXE v tom, jak fungují. EXE znamená spustitelný soubor, což znamená, že je server mimo proces. Pokud spustíte program EXE, vytvoří se jeho vlastní podproces a zdroje budou přiděleny. Naproti tomu DLL je server v průběhu procesu, což znamená, že nelze spustit samotný soubor DLL. Běžící aplikace načte a volá knihovnu DLL, aby využila kód uložený v něm.

Hlavním účelem DLL je, abyste mohli rozdělit váš program. To snižuje složitost a usnadňuje vyhledávání problémů. Pokud vložíte celý kód do jediného spustitelného souboru, bude to docela velké a bude trvat dost času na načtení. Také získáte výhodu opakované použitelnosti, pokud používáte knihovny DLL. Řekněme například, že máte kód, který exportuje soubor do nového formátu, pokud jej dáte do knihovny DLL, můžete tuto funkci použít na téměř jakýkoli program, který vytváříte. Pokud jste jej místo vložili do EXE, může ji použít pouze aplikace, protože funkce nebude viditelná ostatním. Takže pro obecné úlohy je použití DLL velmi výhodné.

Při kódování programu v.Net musíte mít spustitelný soubor, protože by byl ten, který bude spuštěn uživatelem. Soubor EXE je nezbytný, protože by sloužil jako vstup nebo výchozí bod pro váš program. Potom můžete mít tolik DLL, kolik chcete. Mít více než jeden EXE není opravdu vhodné, protože by jeden nemohl využít druhého.

DLL jsou velmi užitečné, pokud programujete hodně nebo děláte spíše komplikované a velké aplikace. Ale pokud právě děláte jednoduchý program, použití DLL není nutné. Udržování kódu v jediném EXE je jednodušší a pohodlnější.

Souhrn:

  1. EXE je spustitelný soubor, zatímco DLL je server v procesu
  2. DLL jsou opakovaně použitelné, zatímco EXE nejsou
  3. Měli byste mít pouze jednu EXE, ale můžete mít více DLL
  4. EXE je nezbytný v.NET programování, zatímco knihovna DLL není nezbytně nezbytná