Tôi đã thấy rất nhiều ví dụ về tải chậm - lựa chọn của bạn là gì?Tải trọng lười biếng - cách tiếp cận tốt nhất là gì?
Cho một lớp mô hình ví dụ:
public class Person
{
private IList<Child> _children;
public IList<Child> Children
{
get {
if (_children == null)
LoadChildren();
return _children;
}
}
}
Lớp Person không nên biết gì về nó như thế nào dành cho trẻ em được nạp .... hoặc nên nó? Chắc chắn nó nên kiểm soát khi tài sản được dân cư, hay không?
Bạn có một kho chứa cặp người cùng với bộ sưu tập con hay bạn sử dụng cách tiếp cận khác, chẳng hạn như sử dụng lớp lazyload - thậm chí sau đó, tôi không muốn lớp lười biếng làm mờ trong kiến trúc mô hình của mình.
Bạn sẽ xử lý hiệu suất như thế nào nếu trước tiên yêu cầu một Người và sau đó là Trẻ em (ví dụ: không tải chậm trong trường hợp này) hoặc bằng cách nào đó tải chậm.
Tất cả điều này có phù hợp với lựa chọn cá nhân không?
Sự cố - đây thường là ví dụ điển hình về tối ưu hóa địa phương với chi phí tối ưu hóa toàn cầu. – dkretz