kiến trúc hướng giao diện người dùng ▪ Thiết kế thuận lợi cho việc kiểm thử đơn vị. ▪ Tăng tính tách biệt giữa tầng dữ liệu và tầng hiển thị dữ liệu trong mô hình MVC.
liệu. ▪ Lớp này sẽ chịu trách nhiệm lấy dữ liệu từ database hoặc network một cách bất đồng bộ. Sau đó sẽ trả về dữ liệu cho Presenter thông qua các hàm callback.
middle-man. Khi người dùng tương tác với View, Presenter tiếp nhận tương tác người dùng và update Model. ▪ Khi Model được update hay có thay đổi, Presenter lấy dữ liệu từ Model, định dạng và đưa tới View để hiển thị.
các task lớn được chia ra nhiều task nhỏ -> dễ test/debug. ▪ Phân chia rành mạch giữa các loại xử lí : xử lí dữ liệu / xử lí view / xử lí business logic. ▪ Phát triển ứng dụng lâu dài, dễ bảo trì và nâng cấp.