Является ли это хорошим примером того, что представляет собой сервисный уровень в MVC?

Является ли это хорошим примером того, что представляет собой сервисный уровень в MVC?
Является ли это хорошим примером того, что представляет собой сервисный уровень в MVC? - markusspiske @ Unsplash

Здесь есть заблуждение

Шаблон Модель-Представление-Контроллер не включает сервисный уровень, и его не волнует, существует ли он. Я задал похожий вопрос несколько лет назад, который был сосредоточен на реализации C# для веб-фреймворка. Я еще не принял ответ на этот вопрос не потому, что ответы были плохими, а потому, что ни одна из возможностей не кажется мне очень «чистой». Вы испытываете ту же проблему с шаблоном проектирования MVC из другого типа приложения (возможно, это более традиционная реализация MVC, чем веб-приложение).

Проблема в том, что MVC не является архитектурой приложения. Он решает проблемы с пользовательским интерфейсом, но не описывает, как организовать логику совместной работы. У вас есть некоторое количество объектов, которые должны взаимодействовать для достижения определенного варианта использования. Вместо того, чтобы пытаться придумать место для размещения этой логики в MVC, закрепите эту логику в каком-нибудь месте, чтобы:

  • Легко рассуждать о коде.
  • Достаточно легко писать тесты.
  • И вы можете сократить количество зависимостей до тех, которые необходимы для выполнения варианта использования.
    • Это помогает сделать код достаточно простым для тестирования.

Вы не найдете идеального места для этой логики совместной работы. Выберите место и будьте последовательны, помня при этом, что вы можете отклоняться от этой структуры там, где это имеет смысл.

Прикрепляю к посту несколько видео по теме:

Прикрепленное видео 1 - Сервис-менеджеры: кто они и какими качествами должны обладать

Прикрепленное видео 2 - ВИЧ в России, HIV in Russia (Eng & Rus subtitles)

Прикрепленное видео 3 - Владимир Красильщик — Анти-введение в Big Data (StudentDay)


LetsCodeIt, 18 января 2023 г., 06:02