MVC1 vs MVC2
MVC thực sự là một mẫu thiết kế hơn có thể được phân loại thành hai mô hình: Mô hình MVC 1 và Mô hình MVC 2. Viết tắt, chúng là MVC1 và MVC2, cả hai đều là mô hình thiết kế Java.
MVC2 thực sự là một mẫu phức tạp hơn trong đó việc tách trạng thái Ứng dụng và Logic điều khiển trình bày được thực hiện. Do đó, không giống như kiến trúc MVC1, Model 2 không đi kèm với các thuộc tính trung tâm trang. Model 2 cũng có một bộ điều khiển chịu trách nhiệm cho tất cả các yêu cầu đến, tìm hiểu điều gì sẽ xảy ra tiếp theo và chế độ xem nào sẽ hiển thị. Trên MVC2, các liên kết của các trang JSP cho giai đoạn hoặc chế độ xem tiếp theo cũng sẽ đi qua bộ điều khiển trái ngược với MVC1 nơi một trang JSP trực tiếp dẫn đến một trang JSP.
Về cơ bản, MVC1 chủ yếu bao gồm các yếu tố kiểm soát sử dụng JSP trong khi MVC2 sử dụng một JSP và Servlet được cho là tốt hơn Model 1 trong việc cung cấp giao diện người dùng. MVC1 cũng sử dụng Java bean để lấy dữ liệu.
Sự khác biệt trong hệ thống của hai mô hình trở nên rõ ràng trong cách các trang được xử lý và xem. Để giải thích thêm, MVC1 bắt đầu với yêu cầu được chấp nhận bởi một JSP hoạt động cùng với Bean, hai kết hợp xử lý logic để tạo ra kết quả. Công việc được phân chia giữa hai người khi Đậu giữ vai trò Mô hình trong khi đó, JSP không chỉ là Bộ điều khiển điều khiển mà còn là Chế độ xem. Kiểu truy cập trực tiếp giữa các trang làm cho mô hình MVC1 lý tưởng cho các ứng dụng nhỏ hơn.
Mặt khác, MVC2 thường được sử dụng cho các ứng dụng lớn hơn hoặc tương tác hơn vì tính năng tập trung hóa trực tuyến của nó. Không giống như MVC1 nơi trang hiện tại được hiển thị là trang xác định trang tiếp theo sẽ mở, kiến trúc MVC2 sử dụng bộ điều khiển giữa trình duyệt và Servlet hoặc các trang JSP. Như đã đề cập, bộ điều khiển đóng vai trò là lối đi chính của Youtube, trong đó các yêu cầu đi qua để mở đường cho chế độ xem tiếp theo. Model 2 về cơ bản tách biệt các trang và Servlets đó với nhau trong khi Model 1 giữ cho hai trang được ghép nối xuyên suốt. Do đó, MVC2 dễ thao tác hơn đối với nhiều người dùng và có khả năng hỗ trợ một hệ thống phức tạp hơn.
Hiện tại, mặc dù, rất ít ứng dụng sử dụng MVC1 làm thiết kế kiến trúc của chúng. Do nhu cầu duyệt web ngày càng cao, nên việc sử dụng MVC2 trong bất kỳ chương trình nào đang được thực hiện là điều bình thường. Tất nhiên, thực tế là MVC1 đơn giản vô tận có nghĩa là nó tiếp tục được yêu thích cho mục đích nghiên cứu. Tuy nhiên, các ứng dụng thực tế không còn được thực hành thường xuyên như MVC2.
Tuy nhiên, một trong những quan niệm sai lầm phổ biến bao gồm việc sử dụng MVC1 và MVC2. Hầu hết mọi người tin rằng MVC2 thực sự là một phiên bản mới của MVC, nhưng thực tế là nó là một thể loại con hoặc một cách khác để tiếp cận quá trình, do đó, tên Model 2. Vì lý do này, cụm từ MVC1 được tạo ra để phân biệt giữa hai mô hình.
Lý tưởng nhất, những người muốn thành thạo kiến trúc phần mềm nên chọn nghiên cứu cả hai khía cạnh của MVC thay vì chỉ MVC2. Điều này sẽ cung cấp sự hiểu biết tốt hơn về toàn bộ hệ thống khi xem xét rằng MVC1 được giới thiệu lần đầu tiên.
Tóm lược:
1.MVC2 sử dụng bộ điều khiển hệ thống trong khi MVC1 không.
2. Quá trình MVC1 đi từ trang này sang trang khác, trong khi MVC2 chuyển hướng đến một bảng điều khiển chung trước khi chuyển sang trang khác.
3. MVC1 hiếm khi được sử dụng ngày nay và chủ yếu là tốt cho các chương trình đơn giản, độc lập.
4.MVC2 là mô hình kiến trúc phổ biến nhất đang được sử dụng hiện nay và tốt nhất cho các hệ thống phức tạp hơn.