Как шаблон MVC отличается, если вообще, от шаблона проектирования DAL/BLL?

Я прохожу через ранние Учебники по доступу к данным на веб-сайте Microsoft ASP.NET, и мне пришло в голову, что все это кажется ужасно подобно тому, что я прочитал о разделении вашей логики и кода представления с помощью

Ответы

Ответ 1

Ссылка, которую вы разместили для учебника по доступу к данным, представляет собой реализацию шаблона MVC. Шаблон MVC - это концепция, реализация может отличаться; у вас это есть в ASP.NET, тогда как в Java существует один фреймворк под названием Struts, который является MVC-реализацией.

Модели DAL и BLL отличаются от шаблона MVC в терминах понятий; но НЕ эта конкретная реализация. MVC фактически достигается за счет использования DAL, BLL и View Patterns.

Ответ 2

MVC адресует больше, чем просто доступ к данным. В MVC как DAL, так и BLL включены в Модель. Представление определяет, как данные модели будут представлены пользователю, а контроллер - это то, что отвечает на пользовательские входы (GET/POST в Интернете).

Альтернативой MVC является классическая архитектура N-уровня, где у вас есть уровень представления, бизнес-уровень и уровень доступа к данным. В этой архитектуре компоненты представления и контроллера объединены в уровне представления. WebForms/WinForms является примером архитектуры N-уровня, в то время как ASP.Net MVC является примером MVC в пространстве Microsoft.