Где я могу найти ясные примеры MVC?
Я прочитал пару вещей о MVC, но я до сих пор не понимаю, когда они должны использоваться и когда их не следует использовать. Я ищу четкие примеры, которые говорят о таких вещах, как ", если вы разрабатываете это, тогда вы должны использовать MVC, например this" и ", если вы разрабатываете это, вы не должны использовать MVC." Большинство примеров, которые я видел, полагаются на сложные структуры, которые уже внедрили все, и вам нужно изучить структуру и использовать ее для понимания того, что на самом деле происходит. Для многих программистов фразы, такие как " бизнес-логика пользовательского интерфейса", звучат как маркетинговые термины — например, слова " Вместо этого вид привязывается непосредственно к модели представления" используются в этом сообщении.
Я знаю об опасностях, которые могут скрываться в тени, поскольку MVC - это концепция, и все чувствуют, что они знают это лучше всего, но никто точно не знает, как ее использовать, потому что может быть много переменных, и каждый позволили иметь другую перспективу в том, как анализировать проект в модели, представлении и контроллере. Существует много теории, но очень мало ясных примеров. То, что я ищу, - это не "лучшие" способы сделать это, чтобы это не считалось субъективным; Я ищу различные простые реализации, которые позволят мне самим решать, какие из них лучше всего подходят.
Кратко: Каковы хорошие онлайновые ресурсы, которые предоставляют аргументы pro и con для использования MVC в различных ситуациях и предоставляют четкие примеры, чтобы помочь читателю понять концепцию?
Ответы
Ответ 1
IMO, лучшие примеры с кодом и/или стартовыми наборами.
Rob Conery имеет отлично количество сообщений, которые объясняют, как создать сайт MVC с помощью ASP.NET MVC. Каждый из них имеет видеоурок, который проходит через обсуждение в блоге.
Официальный сайт ASP.NET MVC также содержит несколько видеопотоков, стартовые наборы (здесь, здесь и здесь) и дополнительный соус, чтобы помочь.
IMO, MVC - это путь для веб-сайтов. Не извергая весь жаргон и маркетинг, он действительно разбивает ваш код на приятные, раздельные и определенные разделы. Каждый из этих разделов также может быть протестирован. Это действительно помогает защитить процесс разработки, потому что у вас есть спокойствие, зная, что прикосновение к одной части системы не нарушает другой (потому что все тесты проходят после вашего последнего изменения).
Другие блоги, которые вы должны проверить:
Ответ 2
Предполагая, что вы имеете в виду MVC для Интернета, вам будет трудно найти что-нибудь более сжатое, чем следующие 60 строк кода:
http://code.google.com/p/barebonesmvc-php/
В частности, обратите внимание на метод шаблона sendResponse, который, в свою очередь, состоит из следующих двух вызовов метода:
applyRequestToModel
applyModelToView
Ответ 3
Один из самых высоких рейтингов, который я видел, - это Learn MVC за 7 дней. Конечно, как ни крути, он по-прежнему бледнеет по сравнению с книгой вроде Pro ASP.NET MVC 4
Ответ 4
Я делал это каждый раз для различных проектов.
От кодирования всего для приложения в одном большом большом PHP скрипт (ОК он начинался как небольшой PHP скрипт, который только что вырос).
Чтобы использовать последнюю самую лучшую инфраструктуру Spring/Freemarker, где мои 5O строки кода Java были потеряны в море XML и кодирования шаблонов.
Вы можете делать MVC без рамки, а в php это, вероятно, самый простой способ. Если весь ваш навигационный код находится в одном script только с логикой навигации, вы делаете MVC!
Для чего-либо, кроме QDP (Quick Dirty Page), я бы рекомендовал использовать какой-то MVC. Представьте себе, что вам нужно будет сделать, если бизнес сказал "могу ли я иметь версию на французском языке" или "отличную программу, но я хочу хранить данные в базе данных xxxxx".
Ответ 5
есть несколько разновидностей mvc: http://en.wikipedia.org/wiki/Presentation-abstraction-control, http://en.wikipedia.org/wiki/Model_View_Presenter.
также см.: http://c2.com/cgi/wiki/like?ModelModelViewController
связанный вопрос: Примеры Иерархического-Модель-Просмотр-Контроллер (HMVC)?
Ответ 6
Его часто трудно четко разделить логику взглядов с вашей бизнес-логикой.
Если вы читаете abit на примерах JSF и JSP, вы можете увидеть ясные примеры использования MVC. Полностью разделяет представление из бизнес-логики.
Если вы ищете хорошую информацию о MVC, я могу предложить http://en.wikipedia.org/wiki/Model-view-controller
Это важная тема, и мне очень нравится идея разделения различных логик. Это помогает программисту и всем остальным, работающим над проектом.