Có ai đã bắt đầu một dự án để làm IOC vào thời gian biên dịch (có thể sử dụng Roslyn hoặc Linq MethodInfo phát ra) chưa?
Trải nghiệm của tôi với các container IOC cho đến nay vẫn rất tuyệt vời, giải quyết một vài vấn đề nhỏ
- Nhiều container IOC khởi động chậm, vì phần lớn logic phân giải xảy ra ở đây
- Thường rất khó để đảm bảo rằng độ phân giải là có thể, vì quá trình biên dịch không còn đảm bảo rằng hàm tạo có thể được gọi
- Thông thường các thùng chứa IOC thêm một chi phí nhỏ vào thời gian chạy (một số thậm chí không nhỏ, thường là các thùng chứa khởi động nhanh chóng chạy chậm)
Dường như với tôi rằng giải pháp lý tưởng sẽ là thêm một bước biên dịch vào chuỗi xây dựng có thêm lớp Factory thay vì IOC.
Có ai làm điều này trước khi? Nếu không, tai sao không?