Różnica między DLL i EXE w .Net

DLL vs EXE w .Net

Podczas programowania w .NET masz wybór, czy chcesz utworzyć EXE lub DLL. Te dwa zawierają kod wykonywalny, ale istnieje różnica między DLL i EXE w sposobie ich działania. EXE oznacza plik wykonywalny, co oznacza, że ​​jest to serwer zewnętrzny. Jeśli uruchomisz plik EXE, utworzy on własny wątek i zostaną mu przydzielone zasoby. Z kolei DLL jest serwerem w trakcie przetwarzania, co oznacza, że ​​nie można uruchomić pliku DLL samodzielnie. Działająca aplikacja ładuje i wywołuje bibliotekę DLL, aby skorzystać z kodu w niej zapisanego.

Głównym celem biblioteki DLL jest podzielenie programu na części. Zmniejsza to złożoność i ułatwia lokalizowanie problemów. Jeśli umieścisz cały kod w jednym pliku wykonywalnym, będzie on dość duży i załadowanie go zajmie trochę czasu. Korzystasz także z możliwości ponownego użycia, jeśli korzystasz z bibliotek DLL. Powiedzmy na przykład, że masz kod, który eksportuje plik do nowego formatu, jeśli umieścisz go w bibliotece DLL, możesz użyć tej funkcji w prawie każdym tworzonym programie. Jeśli zamiast tego umieściłeś go w pliku EXE, tylko ta aplikacja może go używać, ponieważ funkcja nie będzie widoczna dla innych. Tak więc w przypadku zadań ogólnego przeznaczenia korzystanie z bibliotek DLL jest bardzo korzystne.

Podczas kodowania programu w .Net musisz mieć plik wykonywalny, ponieważ byłby to ten, który zostanie wykonany przez użytkownika. Plik EXE jest niezbędny, ponieważ służyłby jako punkt wejścia lub punkt początkowy programu. Możesz wtedy mieć tyle bibliotek DLL, ile chcesz. Posiadanie więcej niż jednego pliku EXE nie jest tak naprawdę wskazane, ponieważ jeden nie byłby w stanie skorzystać z drugiego.

Biblioteki DLL są bardzo przydatne, jeśli dużo programujesz lub tworzysz dość skomplikowane i duże aplikacje. Ale jeśli tworzysz prosty program, używanie bibliotek DLL nie jest konieczne. Przechowywanie kodu w jednym pliku EXE jest prostsze i wygodniejsze.

Streszczenie:

  1. EXE jest plikiem wykonywalnym, a DLL jest serwerem w trakcie przetwarzania
  2. Pliki DLL są wielokrotnego użytku, a pliki DLL nie
  3. Powinieneś mieć tylko jeden plik EXE, ale możesz mieć wiele bibliotek DLL
  4. EXE jest niezbędny w programowaniu .NET, podczas gdy DLL niekoniecznie jest niezbędny