Mô hình MVC là gì? Ưu nhược điểm của MVC?

Thảo luận trong 'Kiến thức tin học' bắt đầu bởi bboy_nonoyes, 14 Tháng 2 2013.

  1. (Lượt xem: 4,260)

    What is MVC?
    Mô hình MVC (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ó giúp cho các developer tách ứng dụng của họ ra 3 thành phần khác nhau Model, View và Controller. 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.

    Các thành phần trong MVC
    Chúng ta khoan hãy refer to đến cách thức nó hoạt động mà hãy xem nó gồm những gì! Đây là mô hình MVC
    [IMG]
    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.
    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.

    MVC làm việc như thế nào?
    Nhìn lại sơ đồ phía trên, ta thấy có mũi tên nét liền và những mũi tên nét đứt. Những mũi tên nét đứt được hình thành trên quan điểm của người dùng mà không phải là của những nhà thiết kế phần mềm thực sự. Do đó chúng ta chỉ quan tâm đến những mũi tên còn lại.
    Đây là một cách đơn giản để mô tả lại luồng sự kiện được xử lý trong MVC:
    - User tương tác với View, bằng cách click vào button, user gửi yêu cầu đi.
    - Controller nhận và điều hướng chúng đến đúng phương thức xử lý ở Model.
    - Model nhận thông tin và thực thi các yêu cầu.
    - Khi Model hoàn tất việc xử lý, View sẽ nhận kết quả từ Model và hiển thị lại cho người dùng. [IMG]
    [IMG]

    Ưu điểm và nhược điểm của MVC
    1. Ưu điểm:
    Thể hiện tính chuyên nghiệp trong lập trình, phân tích thiết kế. Do được chia thành các thành phần độc lập nên giúp phát triển ứng dụng nhanh, đơn giản, dễ nâng cấp, bảo trì..
    2. Nhược điểm:
    Đối với dự án nhỏ việc áp dụng mô hình MC gây cồng kềnh, tốn thời gian trong quá trình phát triển. Tốn thời gian trung chuyển dữ liệu của các thành phần.

    Demo MVC trong C#: http://www.codeproject.com/Articles/25057/Simple-Example-of-MVC-Model-View-Controller-Design
    Nguồn: BlogIT
  2. Facebook comment - Mô hình MVC là gì? Ưu nhược điểm của MVC?

Chia sẻ trang này