Khuôn khổ mở rộng quản lý được công bố gần đây (MEF) của .NET 4.0 - đây có phải là khung tiêm phụ thuộc không? Microsoft Unity từ các mẫu và thực tiễn có lỗi thời trong phiên bản 4.0 không? MEF so sánh với một khuôn khổ như Unity như thế nào?MEF có phải là khung tiêm phụ thuộc không?
Trả lời
Cụ thể trong PDC 2008 2nd Keynote của Scott Guthrie, MEF có nhiều thứ liên quan đến việc mở rộng Visual Studio 2008 và các ứng dụng khác mà không phải sử dụng tất cả các công nghệ COM và cũ ... trình diễn mở rộng phiên bản văn bản trong VS2008 được thể hiện trong số những thứ khác. Bắt đầu khoảng một giờ và 15 phút vào bài phát biểu ngày thứ 2 (http://www.microsoftpdc.com) và bạn sẽ nhận được thông tin trực tiếp, nhưng về cơ bản nếu bạn định "xây dựng một ứng dụng có các điểm mở rộng có thể dễ dàng được khám phá và hỗ trợ khám phá mở rộng, "sau đó MEF là những gì bạn muốn. UNITY là những gì bạn muốn cho một container IoC chất lượng cao có DI cũng như các giải pháp khác ngoài kia nhưng có sự tích hợp tuyệt vời và dễ dàng với Thư viện doanh nghiệp.
Liên quan đến Unity trong EL4.0 (nay là 4.1 - http://msdn.microsoft.com/en-us/library/dd203099.aspx) thực sự là một IoC nằm trên đầu phiên bản 2 ObjectBuilder và EL4.1 có các điểm mở rộng để thống nhất cấu hình của các khối ứng dụng EL khác nhau với Unity .
MEF so với Unity giống như so sánh táo với cam. Một số lớn và cụ thể podcast/webcast (s) mô tả thống nhất trong toàn đang ở đây, mà tôi khuyên bạn nên:
DotNetRocks Hiển thị # 393 http://www.dotnetrocks.com/default.aspx?showNum=393 DNR.tv Show # 126 http://www.dnrtv.com/default.aspx?showNum=126
Nhưng tại sao tôi muốn sử dụng Unity khi tôi có MEF? – bitbonk
Tôi thấy một bản ghi đã làm cho nó nghe như một nhưng nhiều thông tin (Scott Guthrie at PDC2008 [Video/wmv]) khiến tôi nghĩ rằng đó không chỉ là khuôn khổ tiêm phụ thuộc. Từ sounds of things, nó có thể được sử dụng để tiêm phụ thuộc nhưng cũng có nhiều hơn.
Here's a conversation về MEF/MAF/Unity/Prism Tôi tìm thấy sự khai sáng.
Tôi muốn thêm một dòng mopre mà tôi vừa đọc rằng MEF không phải là một phần của Inversion of Control (như dependecny được cho là từ đồng nghĩa của IOC) nhưng nó thực hiện nó. Khi chúng ta triển khai IOC qua tiêm phụ thuộc, chúng ta thường sử dụng Unity, giúp phát hiện các phụ thuộc tĩnh nhưng MEF cho phép chúng ta tăng khả năng mở rộng của ứng dụng mà không cần cấu hình các thành phần tĩnh, thậm chí chúng có thể được phát hiện trong thời gian chạy. Có các liên kết khác cũng có thể giúp bạn nhiều hơn: Difference between Unity and MEF
Tôi không chắc chắn câu trả lời này là hoàn toàn mạch lạc –
- 1. Khung tiêm phụ thuộc tương thích Mono
- 2. Tiêm phụ thuộc là gì?
- 3. Tiêm phụ thuộc - Phải làm gì khi bạn có nhiều phụ thuộc?
- 4. Sự tiêm phụ thuộc không có khuôn khổ
- 5. MEF Phụ thuộc và phiên bản
- 6. Tiêm phụ thuộc với PowerShell
- 7. Tiêm phụ thuộc vào MVC
- 8. giải quyết phụ thuộc vòng tròn với tiêm phụ thuộc
- 9. Tiêm phụ thuộc lười biếng
- 10. phụ thuộc tiêm với nhiều kho
- 11. C# phụ thuộc tiêm - làm thế nào để bạn tiêm một phụ thuộc mà không có nguồn?
- 12. Tiêm phụ thuộc và ghi tên được đặt tên
- 13. Tiêm phụ thuộc vào ServletContextListener với Guice
- 14. Tiêm giá trị vào sự phụ thuộc tiêm
- 15. Sử dụng chính xác phụ thuộc tiêm
- 16. Tiêm phụ thuộc vào các thử nghiệm
- 17. Container tiêm phụ thuộc? Nó làm gì?
- 18. Sử dụng tiêm phụ thuộc cho Properties.Settings.Default?
- 19. Tiêm phụ thuộc dựa trên điều kiện
- 20. Mùa xuân - Tiêm phụ thuộc vào ServletContextListener
- 21. Tiêm phụ thuộc vào lớp tĩnh
- 22. lựa chọn thay thế tiêm phụ thuộc
- 23. Tiêm phụ thuộc trong ứng dụng Sinatra
- 24. Sự tiêm phụ thuộc vào vòng lặp
- 25. Tiêm phụ thuộc với Spring/Junit/JPA
- 26. Tiêm phụ thuộc autowired thất bại;
- 27. Khuôn khổ tiêm phụ thuộc .NET nào bạn sử dụng?
- 28. Tiêm phụ thuộc với Guice: Thứ gì đó không có trong bất kỳ hướng dẫn nào
- 29. Ninject 2.0: Tiêm thuộc tính không có thuộc tính
- 30. Tiêm phụ thuộc vào bên trong một đối tượng
[Câu hỏi này] (http://stackoverflow.com/questions/42251/whither-managed-extensibility-framework-for-net) có thể là bạn quan tâm. –