Giới thiệu về MVC
Trước tiên, chúng ta cần phải hiểu MVC là gì, để hiểu được khái niệm trên, chúng ta cùng đọc qua bài học lý thuyết bên dưới này và cùng nghiên cứu xem MVC là gì.
Mô hình MVC là gì?
MVC là từ viết tắt của ‘Model View Controller’. Đây là một kiến trúc phát triển phần mềm cho phép các developer chia ứng dụng ra thành 3 phần khác biệt nhưng lại có thể tương tác được với nhau. Với kiến trúc MVC, chúng ta chia cấu trúc phần mềm ra 3 phần rõ ràng nhằm mục đích phân rõ nhiệm vụ, làm việc nhóm và hỗ trợ quá trình phát triển phần mềm tốt hơn.
– Mô hình MVC là mô hình gồm 3 lớp: Model, View, Controller. Cụ thể như sau:
- Model: Lớp này chịu trách nhiệm quản lí dữ liệu: giao tiếp với cơ sở dữ liệu, chịu trách nhiệm lưu trữ hoặc truy vấn dữ liệu. Lớp này sẽ làm việc trực tiếp với cơ sở dữ liệu và xử lý tất cả các logic biến đổi dữ liệu.
- View: Lớp này chính là giao diện của ứng dụng, chịu trách nhiệm biểu diễn dữ liệu của ứng dụng thành các dạng nhìn thấy được.
- Controller: Lớp này đóng vai trò quản lí và điều hướng hoạt động của ứng dụng. Tầng này sẽ nhận request từ client, điều phối các Model và View để có thể cho ra output thích hợp và trả kết quả về cho người dùng.
Luồng đi của MVC ra sao?
– Ta có thể mô tả lại hoạt động của mô hình MVC thông qua sơ đồ sau:
Nhìn vào ảnh trên ta có thể thấy rõ ràng, người dùng sẽ gửi HTTP request đến Controller, sau đó Controller sẽ điều hướng lấy dữ liệu từ cơ sở dữ liệu thông qua các Model, Model sẽ trả dữ liệu về cho Controller. Sau khi có được dữ liệu từ Model, Controller sẽ gửi đến View để render ra giao diện, cuối cùng Controller sẽ gửi response tới người dùng qua giao thức HTTP để hiển thị CSS/HTML/JS lên trình duyệt của người dùng.
Tại sao lại dùng MVC?
– Ưu điểm của MVC:
– Nhược điểm của MVC:
+ Sử dụng phức tạp hơn so với code thuần.+ Cần người có hiểu biết tốt để kiến trúc được dự án MVC phù hợp với yêu cầu sản phẩm phần mềm
Tuy nhiên hiện nay MVC rất phổ biến và có rất nhiều các framework tích hợp sẵn mô hình MVC, nên bạn có thể thoải mái sử dụng trong bất kì dự án kích thước như thế nào cũng được.
Ok vậy là các bạn đã hiểu được về kiến trúc MVC trong phát triển phần mềm rồi nhé. Hẹn các bạn ở bài tiếp theo trong đó sẽ có phần code mẫu một dự án sử dụng MVC với PHP
- Posted by baobinhnet
- 2020-07-25 15:34:11