Sự khác biệt giữa DLL và EXE trong. Net Sự khác biệt giữa

Anonim

DLL hoặc EXE trong. Net

Khi lập trình trong. NET, bạn sẽ có một sự lựa chọn nếu bạn muốn thực hiện một EXE hoặc một DLL. Cả hai đều chứa mã thực thi nhưng có sự khác biệt giữa DLL và EXE trong cách chúng hoạt động. EXE là viết tắt của thực thi, có nghĩa là nó là một máy chủ ra quá trình. Nếu bạn chạy EXE, nó sẽ tạo ra thread riêng của nó và các nguồn lực sẽ được phân bổ cho nó. Ngược lại, một DLL là một máy chủ trong quá trình, có nghĩa là bạn không thể chạy một tập tin DLL riêng của mình. Một ứng dụng đang chạy tải và gọi một DLL để sử dụng mã được lưu trữ trong đó.

Mục đích chính của một DLL là để bạn có thể compartmentalize chương trình của bạn. Điều này làm giảm sự phức tạp và làm cho nó dễ dàng hơn để xác định vị trí các vấn đề. Nếu bạn đặt tất cả các mã của bạn vào một thực thi duy nhất, nó sẽ là khá lớn và sẽ mất khá nhiều thời gian để tải. Bạn cũng nhận được lợi ích của khả năng sử dụng lại nếu bạn sử dụng DLL. Nói ví dụ rằng bạn có một mã xuất khẩu một tập tin sang một định dạng mới, nếu bạn đặt nó vào một DLL, bạn có thể sử dụng chức năng đó chỉ trên bất kỳ chương trình nào bạn đang thực hiện. Nếu bạn đặt nó bên trong một EXE thay vào đó, chỉ ứng dụng đó có thể sử dụng nó vì chức năng sẽ không hiển thị cho người khác. Vì vậy, cho các nhiệm vụ mục đích chung, sử dụng DLLs là rất thuận lợi.

Khi viết mã cho một chương trình trong.Net, bạn cần phải có một thực thi vì đó sẽ là một trong đó sẽ được thực hiện bởi người sử dụng. Tập tin EXE là cần thiết vì nó sẽ phục vụ như là một mục nhập hoặc điểm xuất phát cho chương trình của bạn. Sau đó bạn có thể có nhiều DLL như bạn muốn. Có nhiều hơn một EXE là không thực sự cần thiết vì họ sẽ không thể sử dụng khác.

DLLs rất hữu ích nếu bạn chương trình rất nhiều hoặc thực hiện các ứng dụng khá phức tạp và lớn. Nhưng nếu bạn chỉ cần thực hiện một chương trình đơn giản, sử dụng DLLs là không cần thiết. Giữ mã trong một EXE đơn giản hơn và thuận tiện hơn.

Các file DLL có thể sử dụng lại được trong khi EXEs không

Bạn chỉ nên có một EXE nhưng bạn có thể có nhiều DLL

Một EXE là điều cần thiết trong. NET lập trình trong khi một DLL không nhất thiết cần thiết