Tôi nghiêm túc bắt đầu nghĩ rằng việc sử dụng container IoC kích thích để tạo ra các giải pháp overdesigned (ít nhất nó kích thích tôi để cố gắng sử dụng các tính năng không cần thiết khác nhau :).Antipatterns sử dụng vùng chứa IoC. Tại sao container IoC quá phức tạp và được sử dụng như vậy "ưa thích" cách?
Đó là thời gian để đồng bộ hóa danh sách "IoC" antipatterns của tôi với cộng đồng của một người ..
kinh nghiệm ngắn của tôi nói rằng nó là hoàn toàn đủ để gọi phương thức Giải quyết một lần cho mỗi ứng dụng lúc khởi động để giải quyết một số độc thân cơ sở hạ tầng và bắt đầu với chúng "nhà máy của đối tượng thoáng qua" có thể tạo ra "các nhà máy hạt thời gian sống nhỏ hơn" mới. Thậm chí để làm cho các nhà máy này an toàn (ví dụ, tạo một thể hiện cho mỗi luồng) dễ dàng đạt được bằng cách thêm 10 dòng mã vào nhà máy ... Tuy nhiên, các nhà máy này đơn giản hơn nhiều sau đó "tích hợp thư viện với công cụ IoC". Đánh chặn? Chỉ cần tạo trình bao bọc của riêng bạn ... Các trình quản lý thời gian sống/các chiến lược phụ thuộc/các vùng chứa cha mẹ? Gọi Resolve chỉ một lần tại bootstrapper và bạn sẽ không nghĩ về điều đó.
Bạn có thể giúp tôi hiểu lý do tại sao nhà phát triển gọi Resolve nhiều lần trên các lớp ứng dụng khác nhau (bằng cách chuyển vùng chứa hoặc chuyển giao đại lý cho vùng chứa) và sau đó có rất nhiều điều cần suy nghĩ? Tôi thực sự lo lắng rằng tôi nhớ cái gì đó.
Điểm tốt. Bạn có thể de-verbositize này? –