Что такое структура MVC и почему она необходима/полезна?

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

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

Ответ 1

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

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

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

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

Ответ 2

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

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

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

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

Ответ 3

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

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

Ответ 4

MVC означает "MODEL" "VIEW" "CONTROLLER". ASP.NET MVC - это архитектура для разработки веб-приложений ASP.NET по-другому, чем традиционная веб-разработка ASP.NET. Веб-приложения, разработанные с помощью ASP.NET MVC, еще более оптимизированы для поисковой системы (Search Engine). Для разработки приложения ASP.NET MVC требуется Microsoft.NET Framework 3.5 или выше.

Модель:

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

Вид:

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

Контроллер:

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

MVC Basic Architecture

Ответ 5

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

Ответ 6

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

Ответ 7

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

И вам не нужна фреймворк. Но вот что-то для рассмотрения: вы уже знаете, что для веб-приложения вам захочется сделать несколько общих вещей... URL-адреса маршрутов, страницы рендеринга и т.д. написать все? Для других проблемных областей у вас также будут общие вещи.

Ответ 8

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

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

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

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

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

Ответ 9

Друзья Hai Есть некоторые типы архитектуры, в которой работа с каркасом существует, во-первых, я знаю работу с 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