Giải thích về MVC trên một số trang học trực tuyến.

MVC Tại FreeTuts.NET:


MVC là chữ viết tắt của Model - View - Controller, đây là một mô hình kiến phần mềm được tạo ra với mục đích quản lý và xây dựng dự án phần mềm có hệ thống hơn. Mô hình này được dùng khá rộng rãi và đặc biệt là trong các ngôn ngữ lập trình web. Trong PHP hiện tại có khá nhiều Framework và tất cả đều xây dựng từ mô hình MVC, từ đó bạn có thể thấy sự quan trọng của nó như thế nào rồi đấy.

Các Thành Phần Trong MVC:
  • Model: có nhiệm vụ thao tác với cơ sở dữ liệu, nghĩa là nó sẽ chứa tất cả các hàm, các phương thức truy vấn trực tiếp với dữ liệu và controller sẽ thông qua các hàm, phương thức đó để lấy dữ liệu rồi gửi qua View
  • View: có nhiệm vụ tiếp nhận dữ liệu từ controller và hiển thị nội dung sang các đoạn mã HTML, bạn có thể hiểu nôm na đây người ta còn gọi là thành phần giao diện.
  • Controller: đóng vài trò trung gian giữa Model và View. Nó có nhiệm vụ tiếp nhận yêu cầu từ client sau đó xử lý request, load model tương ứng và gửi data qua view tương ứng rồi trả kết quả về cho client.

Nhìn vào mô hình này các bạn thấy giữa model và view không hề có mối liên hệ mà nó sẽ thông qua controller để giao tiếp với nhau.


MVC Tại KhoaNguyen.NET:


MVC là viết tắt của Model – View – Controller. Là một kiến trúc phần mềm hay mô hình thiết kế được sử dụng trong kỹ thuật phần mềm. Nói cho dễ hiểu, nó là mô hình phân bố source code thành 3 phần, mỗi thành phần có một nhiệm vụ riêng biệt và độc lập với các thành phần khác.

Controller: Giữ nhiệm vụ nhận điều hướng các yêu cầu từ người dùng và gọi đúng những phương thức xử lý chúng… Chẳng hạn thành phần này sẽ nhận request từ url và form để thao tác trực tiếp với Model.
Model: Đây là thành phần chứa tất cả các nghiệp vụ logic, phương thức xử lý, truy xuất database, đối tượng mô tả dữ liệu như các Class, hàm xử lý…
View: Đảm nhận việc hiển thị thông tin, tương tác với người dùng, nơi chứa tất cả các đối tượng GUI như textbox, images… Hiểu một cách đơn giản, nó là tập hợp các form hoặc các file HTML.



Luồng đi trong MVC

Khi có một yêu cầu từ phía client gửi đến server, Bộ phận controller có nhiệm vụ nhận yêu cầu, xử lý yêu cầu đó. Và nếu cần, nó sẽ gọi đến phần model, vốn là bộ phần làm việc với Database…

Sau khi xử lý xong, toàn bộ kết quả được đẩy về phần View. Tại View, sẽ gen ra mã Html tạo nên giao diện, và trả toàn bộ html về trình duyệt để hiển thị.


MVC Tại LifeAndLine.COM

MVC là viết tắt của 3 từ M - Model, V - View, C - Controller. Mô hình MVC là một kiến trúc phần mềm hay mô hình thiết kế phần mềm giúp chúng ta tách ứng dụng của chúng ta thành những phần độc lập có những nhiệm vụ riêng biệt.

  • Model: Model là thành phần chứa các phương thức xử lý logic, kết nối và truy xuất database, mô tả dữ liệu,...
  • View: View là thành phần hiển thị thông tin, tương tác với người dùng.
  • Controller: Controller là thành phần điều hướng, là chất kết dính giữa model và view, có nhiệm vụ nhận những request từ người dùng, tương tác với model để lấy thông tin và gửi cho view để hiển thị lại cho người dùng.


Mô hình MVC giúp bạn tạo được các ứng dụng phân tách rạch ròi các khía cạnh (logic về nhập liệu, logic xử lý tác vụ và logic về giao diện). Mô hình MVC chỉ ra mỗi loại logic kể trên nên được thiếp lập ở đâu trên ứng dụng. Logic giao diện (UI logic) thuộc về views. Logic nhập liệu (input logic) thuộc về controller.

Và logic tác vụ (Business logic – là logic xử lý thông tin, mục đích chính của ứng dụng) thuộc về model. Sự phân chia này giúp bạn giảm bớt được sự phức tạp của ứng dụng và chỉ tập trung vào mỗi khía cạnh cần được cài đặt ở mỗi thời điểm.

Mô hình MVC giúp thực hiện dự án một cách dể dàng và nhanh chóng, trong lúc HTML designer thiết kế giao diện ở tần view thì hai lập trình viên còn lại sẻ đảm nhận logic ở tầng controller và các tác vụ ở tầng model.


Nhận Xét:


Ta thấy các trang đều có giải thích khá giống nhau, tuy từ ngữ và mô hình mô tả có chúng riêng biệt và về cơ bản chúng là giống nhau, tuy nhiên bạn có thắc mắc tại sao nó giống nhau như vậy mà seo không có một chuẩn thống nhất về cách mô tả MVC mà mỗi trang lại cố giải thích thích theo cách riêng của mình không? Ngay cả các trang ngoài nước cũng vậy, và thâm thị là bên PHP và ASP.NET cũng đưa ra nhưng khái miệm nhìn bên ngoài ta thấy tương đường nhau nhưng khi vào bên trong thì nó lại có sự khác biệc rõ ràng, đặc biết với PHP theo tôi thấy thì mô hình MVC của các công ty nếu không dùng chung FrameWord thì cũng sẽ có sự khác biết trong đó, để biết chi tiết hơn bạn hãy xem thêm trong bài viết Phân tích tìm hiểu MVC là gì?








No comments:

Post a Comment