Sự hiểu biết của tôi về việc áp dụng MVC / MV * tuân theo nguyên tắc Tách mối quan tâm (SoC) - tách chương trình / mã thành các phần / phần riêng biệt để mỗi phần có thể giải quyết một mối quan tâm riêng (Tham khảo: http://en.wikipedia.org / wiki / Tách_of_concerns )
Có rất nhiều lợi ích khi phân tách mối quan tâm: người ta sẽ không ảnh hưởng đến người khác và nhà phát triển có thể làm việc trên một đơn vị mà không ảnh hưởng đến phần còn lại, v.v ... v.v ... MVC không phải là mô hình duy nhất theo SoC, về cơ bản, chính OOP là một khái niệm tuyệt vời để phá vỡ mọi thứ thành các đơn vị.
MVC / MV * rất hữu ích khi bạn xử lý sự phát triển liên quan đến UI, trong khi bên dưới có thể có nhiều mẫu hơn - nhà máy, singleton, mặt tiền, v.v ... Phần lớn các dự án lớn bao gồm nhiều lớp xử lý các khía cạnh khác nhau, nhưng UI có thể không phải một số trường hợp Bạn có thể thấy MVC rất nhiều - đó là vì rất nhiều dự án có các thành phần UI.
do đó, trong khi nói về những nhược điểm của MVC, nó thực sự phụ thuộc vào các dự án bạn đang thực hiện - nó có UI không? nó đòi hỏi khả năng mở rộng / mở rộng lớn? nó có nhiều tương tác giữa UI và hệ thống phía sau không? ví dụ, một trang web thông tin đơn giản hoàn toàn không yêu cầu MVC, trừ khi bạn có kế hoạch mở rộng nó thành một trang tương tác tuyệt vời trong tương lai.
vì vậy để đánh giá MVC (hoặc tổng quát hơn - một mẫu thiết kế), hãy đặt cho nó một bối cảnh và suy nghĩ về độ phức tạp, khả năng mở rộng, khả năng kiểm tra, bảo trì, hạn chế thời gian, v.v.