2010-06-21 28 views
5

Xin lưu ý rằng tôi đang đề cập đến 3 lớp (phân lớp hợp lý) và không phải 3 tầng (vật lý).Ưu điểm của MVC so với kiến ​​trúc 3 lớp trong các ứng dụng web là gì?

Cũng đừng hiểu sai Tôi không bị ám ảnh bởi các mẫu thiết kế. Tôi là một sinh viên khoa học máy tính và họ đã hỏi tôi câu hỏi mẹo này vì vậy tôi đang cố gắng tìm một câu trả lời thông minh.

Cảm ơn bạn đã trả lời trước!

+0

kiến ​​trúc 3 lớp này mà bạn nói đến là gì? – Anurag

+0

Nơi bạn có 3 lớp - trình bày, logic nghiệp vụ và truy cập dữ liệu. Bài trình bày trao đổi với lớp nghiệp vụ và lớp nghiệp vụ trao đổi với cơ sở dữ liệu thông qua lớp truy cập dữ liệu. Đây là một bài viết thảo luận về sự khác biệt giữa chúng http://blogs.msdn.com/b/diegumzone/archive/2006/10/09/3_2d00_tier_2c00_-3_2d00_layer_2c00_-mvc_3a00_-a-trio-of-famous-trios.aspx nhưng ở đó quá tinh tế đến mức tôi không thể thấy được ưu điểm của cái này so với cái kia. – Plamena

Trả lời

1

MVC là tất cả về việc phân tách các mối quan tâm - nhưng đề cập đến các chi tiết cụ thể trong đó Chế độ xem được kết hợp lỏng lẻo với mô hình và bộ điều khiển; với 3 tầng này không được yêu cầu một cách rõ ràng.

Có - bạn có thể (và nên) có tất cả ba tầng được ghép lỏng lẻo nhưng không được yêu cầu rõ ràng bởi 3-Tier; với MVC.

Là một sang một bên: MVC là một mẫu cụ thể xem xét một vấn đề cụ thể, tôi sẽ cẩn thận khi đề cập đến nó như là một "kiến trúc".

Lợi thế của việc triển khai ASP.NET MVC là cung cấp nhiều điểm tích hợp và tính linh hoạt khác nhau mà không dễ dàng truy cập với ASP.NET "chuẩn" - mà tôi đoán bạn có thể nói là/được sử dụng theo truyền thống khi xây dựng dựa trên web 3-trie systesm trong không gian MS.

6

Chúng không cạnh tranh ý tưởng, MVC truyền thống giao dịch với lớp bản trình bày của một ứng dụng, tức là một trong ba lớp.

+2

Thật không may nhiều người thấy MVC không phải là một trong các lớp, nhưng đại diện cho tất cả 3 lớp của một kiến ​​trúc 3 lớp truyền thống. –

0

Lý do câu hỏi là một mẹo trên là MVC là một thiết kế ba lớp.

Mô hình là cơ sở dữ liệu, Chế độ xem là UX và Bộ điều khiển là Lớp ứng dụng.

Các vấn đề liên quan