Chỉnh sửa 4/4/2014: Này OP, hãy nhìn vào những gì vừa được phát hành hôm nay:
http://bloss.technet.com/b/windowsserver/archive/2014/04/03/windows-manloyment-framework-v5-preview.aspx
Tôi chỉ muốn mở rộng một chút về câu trả lời được chấp nhận, bởi vì nó hơi thưa thớt về chi tiết. Câu trả lời Filipe của không đề cập đến trong những chiến lược mà Windows thực sự không sử dụng đến các vấn đề quyết tâm hoặc phụ thuộc chương trình giảm thiểu, như các cửa hàng thành phần (winsxs,) Global Assembly Cache, hệ thống MSI, vv Nhưng mặt khác anh ấy về cơ bản ngay trong cảm nhận rằng trách nhiệm của nhà phát triển là bao gồm bất kỳ thư viện tùy chỉnh nào với ứng dụng và kiểm tra sự tồn tại của các phụ thuộc trước khi thực hiện giao dịch cài đặt.
Windows ít mô-đun hơn Linux, có những mặt tích cực và tiêu cực. Về mặt trái, Windows là nguyên khối hơn, có nghĩa là tương đối ít thành phần của hệ điều hành có thể tháo rời hoặc tùy chọn như trong Linux. (Mặc dù Windows đang dần trở nên tốt hơn về điều đó.)
Nhưng về mặt tích cực, điều đó có nghĩa là các nhà phát triển có thể đưa ra nhiều giả định hơn về những thư viện mà người dùng sẽ có mặt trên máy của họ. Và các phiên bản khác nhau của các thư viện đó, sau khi được cài đặt, sẽ được lưu trữ cạnh nhau trong kho thành phần, do đó bạn không còn bị App1 sủa về việc cần crapDLL.dll và App2 sủa về việc cần một phiên bản khác của crapDLL.dll thời gian, v.v.