Tôi có một thiết lập MVP (thụ động), và nó đang diễn ra khá tốt. Gần đây tôi đọc Martin Fowlers mô tả về điều này (http://martinfowler.com/eaaDev/PassiveScreen.html) và ông viết "Một lợi thế khác mà Passive View là một cơ chế rất rõ ràng. Có rất ít sự phụ thuộc vào cơ chế Observer hoặc ánh xạ khai báo. "Câu hỏi chung về mô hình xem-người trình bày (C#), mô hình có nên biết người trình bày không?
Trong MVP của tôi, tôi có mô hình hoàn toàn không biết gì về người trình bày và thông tin từ người mẫu đến người trình bày được xử lý bởi sự kiện. Tôi khởi tạo MVP của mình trong chế độ xem bằng cách gọi hàm ctor của người trình bày, ví dụ: new Presenter (this, new Model()) (nơi này đề cập đến khung nhìn).
Câu hỏi của tôi là, tôi có nên làm cho mô hình biết về người trình bày sao cho nó có thể gọi trực tiếp logic trình bày thay vì sử dụng sự kiện?
Sau đó, làm thế nào Martin Fowler thậm chí có thể nghĩ đến việc nói rằng chế độ xem thụ động có rất ít sự phụ thuộc vào các cơ chế quan sát? Có lẽ anh ta có nghĩa là cơ chế liên kết trực tiếp với mô hình (thông qua các sự kiện, ví dụ)? – lejon
Bởi vì người thuyết trình ra lệnh cho chế độ xem thụ động (trong khi chế độ xem đang kích hoạt yêu cầu ít nắm tay hơn, nếu bạn muốn). Nói cách khác, chế độ xem thụ động không quan sát người trình bày, nhưng người trình bày đang quan sát mô hình (và ra lệnh cho chế độ xem tương ứng). –