Рубрики
Без рубрики

Модель-просмотр-контроллер (MVC) объясняется за счет заказа напитков в баре

Этот визуальный учебник поможет вам понять концепцию концепции моделей-контроллера.

Автор оригинала: Kevin Kononenko.

Если вы были в баре, то MVC не так сложно.

Model-View-Controller (MVC) Frameworks являются важнейшей частью создания современных веб-приложений. Пройдите в комнату веб-разработчиков, и вы, вероятно, будете бомбардировать с упоминанием Рубин на рельсах, угловых или Джанго.

В целом, логика MVC может использоваться для описания практически любого процесса веб-разработки, который использует язык, такой как PHP, Ruby, Python или JavaScript.

Тем не менее…

Многие веб-разработчики ориентируются на этот загадочный мир, взламывая сорняки с улыбкой на лице. Когда старший разработчик или товарищ по команде должны посмотреть на код от одного из этих разработчиков, они дадут немедленно YELP, за которым следует SWIFT лекцию по общей практике кодирования.

Это не способ пройти через жизнь! На самом деле, шаблон MVC в современном веб-разработке может быть легко объяснен, заказывая напиток от бармена. И да, это означает, что если вы были в баре, то вы можете понять основной структурный шаблон, общий все веб-приложения.

Смело взломал препятствия, пока реальность хита

Что такое шаблон MVC?

  • Модель : Структурирует ваши данные в надежной форме и готовит его на основе инструкций контроллера
  • Вид : Отображает данные пользователю в формате простого для понимания, на основе действий пользователя
  • Контроллер : Принимает в пользовательские команды, отправляет Commandsto Модель обновлений данных, отправляет инструкции для просмотра интерфейса обновления.

Или в диаграмме форме:

Image Cred: Real Python

Это было скучно. На бар.

Веб-разработчик для начинающих входит в бар …

Вы входите в бар в пятницу вечером и подходите к барреду. Поскольку бар уже переполнен, вы толкаете толпу, пока вы наконец не поймаете внимания Бармен, а вы не растворитесь: «Один Манхэттен, пожалуйста!»

Вы Пользователь и ваш заказ на напиток – это Пользовательский запрос Отказ Для вас, Манхэттен – это просто твой любимый напиток, и вы довольно надежно знаете, что это будет сладким и вкусным напитком.

Бармен дает вам быстрый кивок. К бармену, Манхэттен не является вкусным напитком, это просто серия шагов:

  1. Хватает стекло
  2. Добавить виски
  3. Добавить вермут
  4. Добавить добиться
  5. Выпить
  6. Добавить вишню
  7. Спросите кредитную карту и зарядить.

Образ кредита: Википедия

Мозг Бармен является контроллер Отказ Как только вы говорите слово «Манхэттен» на языке, который они понимают, начинается работа. Эта работа похожа на природе, чтобы сделать маргариту или клубнику Daiquiri, но использует различные ингредиенты, которые никогда не будут смущены. Бармен может использовать только инструменты и ресурсы, которые находятся за барной панелью. Этот ограниченный набор инструментов – Модель и включает в себя следующее:

  • Руки Бармен
  • Шекс/смесительное оборудование
  • Ликера
  • Смешиваться
  • Очки
  • Гарнис

Возможно, в файнсере, у них может быть помощник робота! Или автоматический смеситель напитков. Это не имеет значения для вашего конкретного бармена, который может использовать только доступные ресурсы.

Наконец, готовый напиток, который вы можете видеть и потреблять, это Вид Отказ Вид создан из ограниченных вариантов модели и расположена и передается через контроллер (то есть мозг бармена).

Уроки выучены

  • Хотите еще один напиток? Кричал в пустое стекло, взгляд, сделает вам абсолютно не хорошо. Вы должны поговорить с барменом.
  • Время, проведенное между Bartender, слышим по запросу и начинающим создавать напиток, должно быть абсолютно минимально. Это иногда известно как «тощий контроллер», – другими словами, контроллер должен содержать минимальное количество логики, и делегировать как можно больше к модели. Большой бармен не будет Только у рецептов запомнились, но также будет также подготовить ингредиенты и инструменты надежным способом каждую ночь, чтобы быть необходим минимальное количество поиска и аранжировки, как только клиенты начинают заказывать.
  • Может ли бармен налить все ингредиенты непосредственно в рот клиентов и ожидать, что клиент прокашивает его и смешать напиток? Да, возможно, я полагаю. Вы хотите сохранить столько вашу логику в рамках модели, насколько это возможно, в отличие от View.in другие слова, делая напиток за баром, предпочтительнее смешивания его в рот клиента.

Образ кредита: Xperious

  • Если вы заказываете пиво, бармен вряд ли нужно ничего делать. Возможно, они просто удаляют крышку и руку вы напишите. Что говорят, вы все еще должны просить бармена. Пиво не будет волшебным образом появиться перед вами.

Связывая его обратно в веб-разработку

Вот как тот же процесс воспроизводится в современном веб-приложении:

  • Пользователь делает Запрос По маршруту, скажем/домой.
  • контроллер Получает этот запрос и дает определенный набор заказов, связанных с этим маршрутом. Эти инструкции могут быть либо для Вид обновить или обслуживать определенную страницу или для Модель выполнять определенную логику. Предположим, что этот запрос имеет некоторую логику, связанную с ним.
  • Модель выполняет логику, тянет из базы данных и отправляет постоянный ответ на основе инструкций контроллера.
  • Затем контроллер передает эти данные на представление для обновления пользовательского интерфейса.

Всякий раз, когда требуется запрос, сначала необходимо перейти к контроллеру, прежде чем он может быть преобразован в инструкции для представления или модели. Рубин на рельсы Википедия Статья Содержит дополнительный обзор, если вы ищете больше.

В любое время вам нужно изучить новую структуру веб-разработки, вы столкнетесь с этим последовательным шаблоном MVC. И если конкретная рамка отличается от этого, вы можете быть уверены, что авторы объяснят свой новый шаблон со ссылками на MVC.

Это должно сделать изучение черта, как только вы разрабатываете с MVC один раз, каждая новая структура может соответствовать вашей зоне комфорта.

Вам понравилось это руководство? Дайте мне знать в комментариях или проверить Блог коденалог .