Что такое MVC-фреймворк и почему он необходим / полезен? - PullRequest
9 голосов
/ 31 октября 2009

Я знаю, что инфраструктура MVC позволяет вам отделить бизнес-логику, доступ к базе данных и представление, но зачем нам нужна среда для этого.

Разве мы не можем просто разделить наши классы, возможно, используя разные пакеты / папки для классов модели, представления и контроллера?

Ответы [ 9 ]

16 голосов
/ 31 октября 2009

По-моему, вы говорите о шаблоне MVC, а не о конкретной структуре.Конечно, вы можете оставить все свои классы в одном проекте и по-прежнему использовать шаблон MVC, поскольку у вас есть весь код пользовательского интерфейса в представлениях, логика в контроллерах, ...

Платформа MVC включенаС другой стороны, вам будет проще использовать этот шаблон.Он может предоставлять некоторые базовые классы для контроллеров и механизм связи между представлением и контроллером.

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

Надеюсь, это поможет

5 голосов
/ 31 октября 2009

Среда MVC - это структура, написанная для разделения бизнес-логики, доступа к базе данных и представления.

Это очень полезно в большинстве веб-приложений, а теперь и в приложениях для программного обеспечения и настольных ПК.

Это связано с тем, что, следуя модели MVC, ваш код будет намного понятнее, чище, и вы сохраните свое приложение СУХИМ (не повторяйте себя).

Вы можете написать свои собственные классы и разделить их на Model, View и Control. Но опять же, вам понадобится структура, которая поможет вам в выполнении определенных задач. Например, элемент управления List в ASP.NET или PHP-фреймворк, способный помочь вам переводить текст между языками и так далее. (О, зачем изобретать велосипед?!)

3 голосов
/ 26 февраля 2014

MVC означает «МОДЕЛЬ», «ПРОСМОТР», «КОНТРОЛЛЕР». ASP.NET MVC - это архитектура для разработки веб-приложений ASP.NET не так, как традиционная веб-разработка ASP.NET. Веб-приложения, разработанные с использованием ASP.NET MVC, еще более оптимизированы для поисковых систем. Для разработки приложения ASP.NET MVC требуется Microsoft .NET Framework 3.5 или выше.

Модель:

  • Модель MVC в основном является классом C # или VB.NET.
  • Модель доступна как для контроллера, так и для вида.
  • Модель может быть использована для передать данные из контроллера для просмотра.
  • Представление может использовать модель для отображения данные на странице.

Вид:

  • Просмотр - это страница ASPX без кода файла.
  • Все генерирование и форматирование HTML для конкретной страницы может быть сделано изнутри.
  • Для разработки динамических страниц можно использовать встроенный код (теги сервера).
  • Запрос на просмотр (страница ASPX) может быть сделан только с помощью метода действия контроллера

Контроллер:

  • Контроллер - это в основном класс C # или VB.NET, который наследует system.mvc.controller.
  • Контроллер - это сердце всей архитектуры MVC.
  • Внутри контроллера могут быть реализованы методы групповых действий, отвечающие за отклик браузера или вызывающие представления.
  • Контроллер может получать доступ и использовать класс модели для передачи данных в представления
  • Контроллер использует ViewData для передачи любых данных для просмотра.

MVC Basic Architecture

3 голосов
/ 31 октября 2009

MVC и фреймворк это разные вещи. MVC - это просто архитектурный шаблон, который может быть применен к любому проекту с каркасом или без него.

Так что вам не нужна среда для этого. Вы можете разделить их самостоятельно. :)

2 голосов
/ 27 октября 2016

MVC - это стиль архитектуры организации кода, позволяющий логически организовать вашу кодовую логику для веб-приложений. Как программист, я почти вырвался, когда унаследовал код других людей, когда их логика кода повсеместна, и следование коду их веб-приложения превращается в слежку за кроликом по желобу. Почему MVC? хм .. ну почему я должен использовать картотеку или папки для организации своего множества бумаги, а не просто складывать свои бумаги в большую стопку и заставлять других придумывать, как они соединяются друг с другом. Это повышает читаемость кода. С MVC становится очень легко следовать логике кода, поскольку вы следуете стандартной структуре веб-приложения. Бизнес-логика отделена от пользовательского интерфейса. Проще делегировать работу, отделить работу от проекта.

1 голос
/ 31 октября 2009

Конечно, вы можете подойти к этому самостоятельно, разделив свои занятия. Фреймворк предоставляет общие леса, которые вам не придется создавать самостоятельно. Но это также наложит некоторую структуру на ваш код. Вам нужно оценить, помогает ли фреймворк больше, чем вред.

0 голосов
/ 18 декабря 2013

Hai Friends Есть несколько типов архитектурных фреймворков, во-первых, я знаю 2-х и 3-х уровневые фреймворки, 3-х уровневая и mvc, сущностные фреймворки одинаковы, но под разными именами, поэтому изучите хороший фон в любом Таким образом, если вы работаете в какой-либо международной компании, вы можете легко подсказать / выделить вашему карьеру.

Model View Controller or MVC as it is popularly called, is a software design
pattern for developing web applications. A Model View Controller pattern is made 
up of the following three parts:

**Model** - The lowest level of the pattern which is responsible for maintaining data.

**View** - This is responsible for displaying all or a portion of the data to the user.

**Controller** - Software Code that controls the interactions between the Model and View
0 голосов
/ 11 ноября 2009

Возможно, это просто лингвистическая вещь. Я видел "фреймворки", называющие себя DSL - домен-специфический язык.

И вам не нужно нужна платформа и т. д. Зачем все это переписывать? Для других проблемных областей у вас также будут общие действия.

0 голосов
/ 31 октября 2009

Вы правы, есть стратегии, которые вы можете реализовать, чтобы помочь с разделением интересов без использования MVC.

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

Другим важным преимуществом MVC является тестируемость - (зависит от того, верите ли вы в юнит-тестирование - я согласен).
Инфраструктура MVC гарантирует, что вся логика оркестровки на ваших контроллерах и через коллекцию FormControls позволяет проводить полное модульное тестирование всех аспектов вашего приложения, за исключением того, как оно представлено.

Поскольку инфраструктура MS MVC поощряет соблюдение общих правил и структуры приложения, что должно привести к большей управляемости .

Основным недостатком MVC является переплетение кода, необходимого для представления, но это легко можно преодолеть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...