Tôi muốn triển khai ứng dụng tiếp theo của mình với mẫu MVP, vì vậy tôi bắt đầu đọc một số bài viết về cách thực hiện nó. Vấn đề chính đối với tôi là có những cách tiếp cận khác nhau đối với mô hình này. Một số người nói rằng chúng ta nên xem hoạt động như một cái nhìn nhưng một số người khác rằng hoạt động phải là một người trình bày.Android MVP - một Hoạt động có phải là Chế độ xem hoặc Trình bày không?
Hoạt động dưới dạng chế độ xem được mô tả tại đây: MVP Android và điều đó có ý nghĩa. Nhưng mặt khác tôi tìm thấy câu trả lời này với một vài upvotes https://stackoverflow.com/a/7609943 và ai đó nói rằng hoạt động nên là một người trình bày.
Có ai có kinh nghiệm với mẫu này không?
Chế độ xem không đề xuất chi tiết triển khai cơ bản. Chế độ xem chỉ là trừu tượng có thể được triển khai theo nhiều cách (một chế độ xem GWT, chế độ xem giả, chế độ xem dựa trên Android).Tôi thực sự nghĩ rằng một hoạt động trong Android gần gũi hơn với Chế độ xem, vì hoạt động có xu hướng biết chi tiết triển khai (XML bố cục cơ bản, v.v.). Trong thử nghiệm đơn vị, có Presenter là một hoạt động, liên kết chặt chẽ với môi trường Android, trong khi một người trình bày theo lớp bất khả tri cho phép linh hoạt hơn nhiều (bạn có thể dễ dàng kiểm tra người trình bày bằng cách sử dụng 'mvn test' theo cách này). –
Vậy bạn đề xuất gì với tư cách là người trình bày? –
Như tôi đã nói ở trên, người trình bày phải là một người đàn ông trung gian xem lớp bất khả tri. Ví dụ, nó có thể là một lớp đơn giản tham chiếu một mô hình và một khung nhìn thông qua các giao diện trong trường hợp đơn giản nhất của nó, và có thể ra lệnh cho sự tương tác và luồng công việc giữa mô hình và khung nhìn. Giả sử bạn có trình bày như vậy có thể dễ dàng sử dụng lại cho các môi trường khác nhau: Android, GWT, v.v. –