Что такое «модель» в паттерне MVC? - PullRequest
2 голосов
/ 11 ноября 2011

Итак, я выполнил поиск в Google по шаблону MVC, и я все еще не совсем уверен, что такое «модель».С чем конкретно это связано?Я довольно новичок в программировании, поэтому все объяснения, которые я могу найти, идут прямо над моей головой.Я был бы очень признателен, если бы вы могли дать мне объяснение простыми словами.

Спасибо

Ответы [ 5 ]

8 голосов
/ 11 ноября 2011

Самый простой способ, которым я могу это описать, - это назвать его частью «Данные». Если это связано с получением или сохранением данных, то это в модели. Если у вас есть веб-приложение, то, как правило, это модель, в которой вы взаимодействуете с базой данных или файловой системой.

0 голосов
/ 11 ноября 2011

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

Простой пример:

Автомобиль - это модель, которая обладает свойствами, которые представляют автомобиль (колеса, двигатель и т. Д.).

Контроллер определяет действия, которые могут быть предприняты на автомобиле: просмотр, редактирование, создание или даже такие действия, как покупка и продажа.

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

0 голосов
/ 11 ноября 2011

Модель может представлять вашу «Модель предметной области» в небольших проектах. Модель предметной области состоит из классов, которые представляют реальные сущности проблемы, с которой вы сталкиваетесь.

В более крупных проектах модель предметной области должна быть отделена от фактического приложения MVC и предоставлена ​​для собственного проекта / сборки. В этих крупных проектах зарезервируйте «Модель» (т. Е. «Папка моделей в проекте MVC») для объектов представления пользовательского интерфейса (DTO - Объекты передачи данных)

0 голосов
/ 11 ноября 2011

Модель отвечает за управление данными в приложении.Это может включать такие вещи, как запросы к базе данных и файловый ввод-вывод.

представление, очевидно, является шаблоном, а контроллером является бизнес-логика.

0 голосов
/ 11 ноября 2011

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

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

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

Представление отображает состояние, удерживаемое моделью, интерпретирует ввод пользователя и перенаправляет его в контроллер.Затем контроллер решает, будет ли модель обновлена ​​немедленно или сначала информация будет передана службам приложений.

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