DLL i EXE w .Net
DLL vs EXE w.Net
Podczas programowania w.NET masz wybór, czy chcesz zrobić EXE, czy DLL. Oba zawierają kod wykonywalny, ale istnieje różnica między DLL i EXE w ich działaniu. EXE oznacza plik wykonywalny, co oznacza, że jest serwerem out-process. Jeśli uruchomisz plik EXE, utworzy on własny wątek i zostaną mu przydzielone zasoby. Natomiast biblioteka DLL jest serwerem wewnętrznym, co oznacza, że nie można samodzielnie uruchomić pliku DLL. Działająca aplikacja ładuje się i wywołuje bibliotekę DLL w celu użycia kodu w niej zapisanego.
Głównym celem biblioteki DLL jest to, że możesz oddzielić swój program. 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 jego załadowanie zajmie trochę czasu. Możesz również skorzystać z możliwości ponownego użycia, jeśli używasz 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 programie, który tworzysz. Jeśli umieścisz go w pliku EXE, tylko ta aplikacja może go użyć, 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ż będzie to ten, który zostanie wykonany przez użytkownika. Plik EXE jest niezbędny, ponieważ może służyć jako punkt wyjścia lub początek programu. Możesz wtedy mieć tyle bibliotek DLL, ile chcesz. Posiadanie więcej niż jednego EXE nie jest naprawdę wskazane, ponieważ nie byliby w stanie wykorzystać drugiego.
Pliki DLL są bardzo przydatne, jeśli dużo programujesz lub robisz raczej skomplikowane i duże aplikacje. Ale jeśli tworzysz prosty program, używanie bibliotek DLL nie jest konieczne. Utrzymanie kodu w jednym pliku EXE jest prostsze i wygodniejsze.
Streszczenie:
- EXE to plik wykonywalny, podczas gdy DLL jest serwerem w procesie
- Pliki DLL są wielokrotnego użytku, podczas gdy EXE nie są
- Powinieneś mieć tylko jeden EXE, ale możesz mieć wiele bibliotek DLL
- EXE jest niezbędny w programowaniu.NET, podczas gdy DLL niekoniecznie jest niezbędny