2008-11-20 3 views
45

Я прочел пару вещей о MVC, но я до сих пор не понимаю, когда они должны использоваться и когда их не следует использовать. Я ищу четкие примеры, которые говорят о таких вещах, как «, если вы разрабатываете это, тогда вы должны использовать MVC, например,« »и« », если вы разрабатываете это, вы не должны использовать MVC.« Большая часть примеры, которые я видел, полагаются на сложные структуры, которые уже внедрили все, и вам нужно изучить структуру и использовать ее для понимания того, что происходит на самом деле. Для многих программистов, формулировки, такие как «бизнес-логика UI» звучит как маркетинговые термины —, например, слова « Вместо этого View непосредственно связываются с презентацией моделью» используется в this post.Где я могу найти ясные примеры MVC?

Я осведомлен о опасности, которые могут скрываться в тени, поскольку MVC - это концепция, и все чувствуют, что они знают это лучше всего, но никто не знает точно, как ее использовать, потому что может быть много переменных, и каждому разрешено иметь другую точку зрения на то, как для анализа проекта в модели, представлении и контроллере. Существует много теории, но очень мало ясных примеров. То, что я ищу, - это не «лучшие» способы сделать это, чтобы это не считалось субъективным; Я ищу разные простые реализаций, которые позволили бы мне самим решать, какие из них самые лучшие.

Вкратце: какие хорошие ресурсы он-лайн предоставляют аргументы pro и con для использования MVC в различных ситуациях и предоставляют четкие примеры, чтобы помочь читателю понять концепцию?

+0

Вот хороший пример того, что я ищу: http://toys.lerdorf.com/archives/38-The- no-framework-PHP-MVC-framework.html – Tom 2008-11-20 10:06:45

+1

И вот отличный пример: http://www.c2.com/cgi-bin/wiki?ModelViewController – Tom 2008-11-20 10:10:05

ответ

13

ИМО, лучшие примеры с кодом и/или стартовые комплекты.

Rob Conery имеет great number of posts, которые объясняют, как создать сайт MVC с помощью ASP.NET MVC. У каждого из них есть video tutorial, который проходит через обсуждение в блоге.

Официальный сайт ASP.NET MVC также имеет некоторые video posts, стартовые комплекты (here, here и here) и extra sauce, чтобы помочь.

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

Другие блоги, которые вы должны проверить:

1

Я сделал это в любом случае для различных проектов. От кодирования всего для приложения в одном большом большом скрипте PHP (ОК он начинался как небольшой скрипт PHP, который только что вырос). Чтобы использовать новейшую конструкцию Spring/Freemarker, в которой мои 5O-строки java-кода были потеряны в море XML и кодирования шаблонов.

Вы можете сделать MVC без рамки, а в php это, вероятно, самый простой способ. Если весь ваш навигационный код находится в одном скрипте с логикой навигации, то вы делаете MVC!

Для чего-либо, кроме QDP (Quick Dirty Page), я бы рекомендовал использовать какой-то MVC. Представьте себе, что вам нужно будет сделать, если бизнес сказал: «Могу ли я иметь версию на французском языке» или «отличную программу, но я хочу сохранить данные в базе данных xxxxx».

0

Его часто трудно четко разделить логику взгляда с вашей бизнес-логикой. Если вы читаете abit на JSF & В примерах JSP вы можете увидеть ясные примеры использования MVC. Полностью разделяет представление из бизнес-логики.

Если вы ищете хорошую информацию о MVC я могу предложить http://en.wikipedia.org/wiki/Model-view-controller

Это важная тема, и мне очень нравится идея sepperating различных логик. Это помогает программисту и всем остальным, работающим над проектом.

4

Предполагая, что вы имеете в виду MVC для веб-вы бы трудно найти что-нибудь более кратким, чем следующие 60 строк кода:

http://code.google.com/p/barebonesmvc-php/

В частности, обратите внимание на метод шаблона sendResponse, который в свою очередь состоит из следующих двух вызовов метода:

applyRequestToModel

applyModelToView

2

Один из самый высокий рейтинг, который я видел, это сообщение Learn MVC in 7 days. Конечно, как ни крути, он по-прежнему бледнеет по сравнению с книгой вроде Pro ASP.NET MVC 4

Смежные вопросы