Để có thể nắm bắt và hiểu được kỹ hơn về phương pháp xây dựng một website đúng chuẩn, hôm nay, giảng viên Trần Hữu Thiện – Bộ môn Công nghệ thông tin Cao đẳng FPT Mạng cá cược bóng đá Hà Nội sẽ có những chia sẻ kỹ hơn về khái niệm MVC – phương pháp để xây dựng website.
MVC là 1 phương pháp để xây dựng website, nó quy định ra các thành phần cụ thể trong việc xây dựng ứng dụng web, định nghĩa ra đường đi của dữ liệu trong ứng dụng.
Trước khi có mô hình MVC mỗi dự án có sẽ có cấu trúc thư mục, luồng dữ liệu riêng biệt, phụ thuộc nhiều vào kỹ năng và cách tư duy của người đứng đầu dự án. Do đó những thành viên mới của đội phát triển cần mất thời gian để đọc lại source code cũ và hòa nhập với team.
Cái tên MVC được đặt dựa trên các thành phần chính hình thành mô hình này:
- 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.
- 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 phối luồ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
MVC chỉ là 1 phương pháp để làm ra 1 website, nó không hề có những ràng buộc cứng nhắc việc triển khai code bắt buộc phải tuân thủ, do đó lập trình viên có thể thoải mái tùy biến việc triển khai dự án theo nhu cầu công việc nhưng vẫn giữ được bản chất cốt lõi của phương pháp.
- Mô hình MVC nguyên gốc
- Mô hình tùy biến của MVC
Có nhiều cách để tùy biến, tuy nhiên trong series này mình sẽ sử dụng cách tùy biến sử dụng thêm các công cụ hỗ trợ như sau:
- .htaccess
- Namespace
- Composer
- Thư viện illuminate/database
- Thư viện jenssegers/blade
- Thư viện mrjgreen/phroute
Lợi ích của cách triển khai này
- Hiểu cách xây dựng base project theo hướng 1 framework
- Hiểu được cách namespace làm việc và triển khai namespace trong project
- Cài đặt và sử dụng được composer (autoload & cài đặt các thư viện)
- Sử dụng các thư viện trong project (có các thư viện sử dụng trong framework Laravel)
Bài viết đầu tiên trong series giúp đưa ra định hướng triển khai trong series, trong các bài viết tiếp theo chúng ta sẽ đi dần vào việc xây dựng các thành phần trong ứng dụng.