Найти в Дзене
48 подписчиков

MVC


Продолжим описывать какие-то термины. Ранее я писал, что такое модель. Она была первой, так как этот термин многие не совсем корректно понимают думая, что модель "это просто данные". Но ещё наверное стоит написать, что такое MVC в целом. И почему он появился.

MVC или model-view-controller — это архитектурный паттерн. Сам по себе термин model-view-controller появился в конце 1970-ых годов при разработке языка SmallTalk компании Xerox. Сам паттерн был привязан к концепциям специфичным для SmallTalk, таким как screens и tools, но более широкое его применение и сейчас применимо для приложений (особенно для веба).

Одной из основных фишек этого паттерна, что View остаётся stateless (всё состояние определяет модель), что отлично ложится на http запросы и отрисовку веб страниц. Поэтому он так широко применялся и применяется в вебе.

В контексте Unity можно писать в MVC стиле, и в любом случае как минимум два пункта полезны во многих архитектурных паттернах — это понимание domain model и view, и во всех современных приложениях View всегда Stateless, если оно написано правильно.

Я больше люблю MVVM, кому-то больше нравится MVP, а в реальности на "разных уровнях приближения" любая программа или игра состоит из композиции этих паттернов. Как говориться начинать повествование лучше с начала понимая предпосылки почему и что появлялось. Так же как и то, что современному разработчику лучше понимать термины домен и репозиторий, так как они не зависят от контекста конкретной технологии. Это просто термины, которые появились в ходе развития программирования.

Источник:
Pro ASP.Net MVC 5 @ Адам Фримен

#термин
1 минута