Беседа:Model-View-Controller

от Уикипедия, свободната енциклопедия
Направо към навигацията Направо към търсенето

Текст за сливане[редактиране на кода]

Взех следния (пътьом малко попроменен от мен) текст от ASP.NET, защото мястото му не е там, а тук, но трябва да се слее по смислен начин с текста на настоящата статия:

MVC е шаблон за дизайн, който решава някои основни проблеми като разделяне на отговорностите в уеб приложенията и преизползване на кода. Шаблонът MVC е разработен през 1970-те от Тригве Реенског (Trygve Reenskaug). Първоначално MVC e част от Smalltalk, но е адаптиран за приложения за интернет.

Модел

Моделът представлява множество от класове, които моделират данните, с които се работи. Тази концепция е известна още като бизнес логика. В модела може да има и правила, които валидират данните. Той изпълнява ролята на слой за достъп до информацията (Data Access Layer). Достъпът до данните, с които се работи, от базата данни се нарича енкапсулиране. Моделът не зависи от конкретното приложение.

Изглед

Изгледът представлява шаблон, по който се генерира потребителския интерфейс. По-конкретно в десктоп приложенията изгледът е множество от контроли (таблици, падащи менюта), които изграждат видимата част за потребителите. В Интернет приложенията изгледът работи с определени данни, слага ги в шаблон на HTML, данните се обработват, генерира се готов HTML, който се връща обратно на потребителя.
Контролерите са най-важната концепция от MVC. Те са ядрото на всеки Model-View-Controller продукт и определят логиката, по която приложението работи. Контролерите представляват множество от класове, които приемат заявки от потребителя, обработват данните от заявките и връщат краен резултат. Всеки контролер има едно или повече действия.
MVC шаблонът създава приложения, в които различните аспекти (входна логика, бизнес логика и интерфейс логика) са разделени, като същевременно осигурява свободно взаимодействие между различните елементи. Шаблонът определя къде да бъде съхранена всеки вид логика в приложението. Интерфейс логиката принадлежи на изгледа. Входната логика принадлежи на контролите, докато бизнес логиката принадлежи на модела. Това разделение помага в случай на по-сложно приложение, защото позволява на програмиста да се фокусира само върху един аспект от имплементацията. Например, може да се фокусираме върху изгледа, без да се интересуваме от бизнес логиката. Свободното взаимодействие между тези три компоненти в MVC приложенията дават възможност за паралелно изграждане. Например, трима различни програмисти могат да работят върху трите компоненти по едно и също време.[1]

--Лорд Бъмбъри (беседа) 11:30, 22 март 2015 (UTC)