Nguyễn Tiến Hải – D17CQVT08B 33
3.2.1.3. Các kiến trúc thường dùng trong dự án React Native
MVC, MVP hay MVVM là 3 trong số những kiến trúc phổ biến nhất dành cho ứng dụng di động. MVC là viết tắt của Model-View-Controller, MVP là Model-View- Presenter và MVVM nghĩa là Model-View-ViewModel. Tất cả các kiến trúc này đã và đang giúp cho việc phát triển ứng dụng nhanh chóng, dễ test và bảo trì. Chúng là các pattern cơ bản được trình bày mục đích chính là giảm sự phức tạp của code trên tầng giao diện và làm cho giao diện người dùng đơn giản và có thể quản lý.
3.2.1.3.1. Mơ hình MVC
Mẫu thiết kế Model View Controller (MVC) chỉ định rằng một ứng dụng bao gồm một mơ hình dữ liệu, thơng tin trình bày và thơng tin điều khiển. Mơ hình u cầu mỗi cái này phải được tách biệt thành các đối tượng khác nhau.
MVC hơn cả một mơ hình kiến trúc, nhưng khơng phải là ứng dụng hồn chỉnh. MVC chủ yếu liên quan đến giao diện người dùng / lớp tương tác của một ứng dụng.
Hình 3.4. Sơ đồ mơ hình MVC
- Model: chỉ chứa dữ liệu ứng dụng thuần túy, nó khơng chứa logic mơ tả cách trình bày dữ liệu cho người dùng.
- View: trình bày dữ liệu của Model cho người dùng. View biết cách truy cập dữ liệu của Model nhưng khơng biết dữ liệu này có ý nghĩa gì hoặc người dùng có thể làm gì để thao tác với nó.
- Controller: tồn tại giữa View và Model. Nó lắng nghe các sự kiện được kích hoạt bởi View (hoặc một nguồn bên ngoài khác) và thực hiện hành động thích hợp với
Nguyễn Tiến Hải – D17CQVT08B 34 những sự kiện này. Trong hầu hết các trường hợp, phản ứng là gọi một phương thức trên Model. Vì View và Model được kết nối thơng qua cơ chế thông báo, kết quả của hành động này sau đó sẽ tự động được cập nhật tại View.
3.2.1.3.2. Mơ hình MVP
Mẫu MVP tương tự như mẫu MVC. Nó có nguồn gốc từ mẫu MVC, trong đó Controller được thay thế bởi Presenter. Mơ hình này này chia ứng dụng thành ba khía cạnh chính: Model, View, and Presenter.