Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
В каконическом виде
Модель (англ. Model). Модель предоставляет знания: данные и методы работы с этими данными, реагирует на запросы, изменяя своё состояние. Не содержит информации, как эти знания можно визуализировать.
Не надо загоняться по точным формулировкам, нужно всё делать удобно.
Вот Вам ещё одна «неудачная» ссылка en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller, там опять же в первой же строке пишется о том, что это паттерн разделения слоёв.
Model–View–Controller (MVC) is a computer software design pattern that separates the representation of information from the user's interaction with it.[1][2]
The model consists of application data and business rules, and the controller mediates input, converting it to commands for the model or view.[3]
A view can be any output representation of data, such as a chart or a diagram. Multiple views of the same data are possible, such as a pie chart for management and a tabular view for accountants. The central idea behind MVC is code reusability and separation of concerns. [4]
Кстати, а в последнем абзаце опять же говорится о том, что центральной идеей является разделение, а не деление на m, v и с.
Любой кто имел нормальный опыт разработки знает, что в реальных проектах слоёв гораздо больше. А «прекрасный мир» с тремя слоями у нас остался где-то в районе университета и их лабораторий, где этого хватало. Не надо заучивать паттерны, нужно учиться пользоваться их идеями, а не сводить всё к одной единственно правильной реализации.
web и MVC: разбор полетов