Почти каждая платформа делает MVC по-другому, таким образом, Вы могли бы закончить тем, что стали еще более смущенными. Общие принципы MVC очень просты: "Модель является состоянием; представление реагирует для моделирования; контроллер реагирует на представление; контроллер изменяет модель". Модель, представление и контроллер являются понятиями - они - то, чем Вы чувствуете их, чтобы быть. Классы, наборы классов, экземпляры классов с конфигурационными XML-файлами, Вы называете его.
я на самом деле думаю это о покрытиях основные принципы. Без платформы Вы не добрались бы гораздо дальше. То, что имеет значение, - то, как конкретная платформа определяет модель, представление и контроллер и их взаимодействия.
Основным преимуществом MVC является разделение проблем. Когда Вы пишете код, и если Вы не осторожны, это может стать большой путаницей. Так зная, как поместить Модели, Представления, и Контроллеры в различных "бункерах" экономят Вам время в долгосрочной перспективе. Любая стратегия хороша.
, Таким образом, здесь является моим:
Я не сделал понял шаблон MCV, пока я не попробовал его. Если Вы знакомы с PHP, можно попробовать http://cakephp.org , это - платформа PHP, которая использует большинство парадигм RoR.
Попробуйте эту большую статью: платформа PHP MVC без платформ . Это не замена для введения в шаблон MVC, но это обеспечивает простые и практические примеры.
Выезд это описание, пример и схема, которые покрывают основы MVC.
MVC является большой установкой для простых проектов, но это часто путается с PAC, который является подобным и дальнейшим развитием на MVC. Обе установки большие, две ссылки дают информацию для помощи им быть понятными.
В дополнение к ответу Шлифовального станка я сказал бы, что большинство платформ путает фронтальный контроллер и MVC. Они - действительно два абсолютно отдельных понятия, но они часто оба присутствуют в платформах. Поэтому не упустите это.
Один из самых интересных ресурсов исходные бумаги из Trygve Reenskaug. Википедия также имеет большую агностическую языком информацию о MVC.
MVC в основном просто разделяет Ваш код на Модель, которая имеет дело с данными, Представление, которое отображает данные и Контроллер, который передает данные от Модели до Представления.
Это - ничто, для чего Вы нуждаетесь в API или платформе, это - просто способ разделить Ваш код. Причина много использования платформ, которое это - потому что это - очень простое понятие, это работает хорошо на многие вещи (это соответствует веб-страницам отлично), и довольно гибко (например, с направляющими, Вы могли делать все в своем представлении или модели/контроллере, если Вы так - желаемый..)
А быстрый пример в Python, примера MVC структурировал сценарий Python. Не обязательно "лучшие практики", но это работает и довольно просто:
class Model:
def get_post(self, id):
# Would query database, perhaps
return {"title": "A test", "body": "An example.."}
class Controller:
def __init__(self):
self.model = Model()
self.view = View()
def main(self):
post = self.model.get_post(1)
self.view.display(post)
class View:
def display(self, item):
print "<h1>%(title)s</h1>\n%(body)s" % item
c = Controller()
c.main()
Не спрашивайте меня, как, но я столкнулся с этой записью от превосходной Wiki на предмет шаблонов разработки:
http://www.c2.com/cgi-bin/wiki?ModelViewController
Большое интересное обсуждение и указатели на различные ресурсы.
И только мне потребовались шесть дней для нахождения его!
Вы можете попробовать этот PHP MVC Tutorial. Он хорошо написан, очень легкий, содержит только самое необходимое, и вы можете найти код на sourceforge.
Этот учебник проведет вас от начала и до конца создания MVC. Цель состоит не только в том. создать готовый фреймворк MVC, хотя и это произойдет, а в том, чтобы продемонстрировать, как работает MVC и некоторые концепции, которые лежат в его основе.