DEV Community

HCMUTE Project
HCMUTE Project

Posted on

Mô hình MVC

Mẫu kiến trúc phổ biến: MVC (Model-View-Controller)

1. Giới thiệu về MVC

  • MVC (Model-View-Controller) là mẫu thiết kế được sử dụng rộng rãi trong các hệ thống, đặc biệt là các ứng dụng web. Mô hình giúp tạo ra các giao diện người dùng trực quan và có khả năng tương tác cao. MVC chia một ứng dụng thành 3 phần chính và mỗi phần sẽ có một vai trò riêng biệt:

Cấu trúc:

  • Model: Lấy dữ liệu từ các bộ nhớ lưu trữ như database, web-services, content providers và cung cấp nó cho Controller hoặc View.
  • View: Là những gì hiển thị cho người dùng trên màn hình. Người dùng tương tác với View thông qua các hành động như: nhấn nút, cuộn danh sách, xem ảnh, chơi nhạc, ...
  • Controller: Bao gồm tất cả các xử lý logic. Nó nhận các requests từ View và lấy dữ liệu thông qua Model theo yêu cầu. Sau đó xử lý dữ liệu và trả lại View để hiển thị kết quả tới người dùng.

Image description
Hình 1.a: Conceptual view

Image description
Hình 1.a: Shows a runtime system architecture


2. Khi nào sử dụng MVC?

  • Khi cần hiển thị dữ liệu theo nhiều cách khác nhau hoặc có nhiều cách tương tác với dữ liệu.
  • Khi cần tách biệt rõ ràng giữa giao diện, logic ứng dụng và dữ liệu để dễ bảo trì và mở rộng.

3. Ưu điểm của MVC

  • Tách biệt trách nhiệm: Cho phép thay đổi dữ liệu mà không ảnh hưởng đến giao diện và ngược lại.
  • Linh hoạt: Hỗ trợ hiển thị cùng một dữ liệu theo nhiều cách khác nhau.
  • Tái sử dụng: Các thành phần có thể được tái sử dụng dễ dàng hơn.

4. Nhược điểm của MVC

  • Tăng độ phức tạp khi ứng dụng chỉ có logic đơn giản.
  • Yêu cầu thêm mã để quản lý sự tương tác giữa các thành phần.

Bài viết này cung cấp cho bạn những hiểu biết cơ bản về mô hình MVC. Bạn có thể xem thêm về mô hình three-layer để lựa chọn một pattern phù hợp với yêu cầu của bạn.

Top comments (0)