#3 – Сервисы и бизнес-логика
Видеоурок
Когда мы только начинаем работать с NestJS, кажется удобным писать всю логику прямо в контроллерах. Мы создаём маршрут, обрабатываем данные и сразу возвращаем ответ. Но чем больше становится приложение, тем больше появляется проблем: код сложно поддерживать, он становится громоздким и запутанным.
Именно поэтому в NestJS существуют сервисы. Это отдельные классы, которые отвечают за всю бизнес-логику приложения. Контроллеры лишь принимают запрос, передают данные сервису и возвращают результат пользователю. Такой подход делает проект более понятным, структурированным и удобным для масштабирования.
Зачем нужны сервисы?
Сервисы помогают разделить обязанности в коде. Контроллеры занимаются маршрутизацией, а сервисы — реальными действиями: обработкой данных, взаимодействием с базой данных, проверками и вычислениями.
Представьте, что вы пишете приложение для управления задачами. В контроллере будут маршруты: «получить список задач», «создать задачу», «удалить задачу». Но сама логика — где хранить задачи, как они создаются, как искать их по ID — будет лежать в сервисе. В результате контроллеры остаются лёгкими, а сервисы можно повторно использовать в разных местах.
Внедрение зависимостей
NestJS построен на концепции Dependency Injection (внедрение зависимостей). Это значит, что сервисы можно подключать к контроллерам автоматически. Вы просто указываете сервис в конструкторе контроллера, и Nest сам создаёт экземпляр и передаёт его. Благодаря этому разные части приложения легко взаимодействуют между собой, оставаясь при этом независимыми.
Материалы для курса
Чтобы скачивать материалы к видеокурсам необходимо оформить подписку на сайт
Задание к уроку
Необходимо оформить подписку на проект, чтобы получить доступ ко всем домашним заданиям
Большое задание по курсу
Вам необходимо оформить подписку на сайте, чтобы иметь доступ ко всем большим заданиям. В задание входит методика решения, а также готовый проект с ответом к заданию.
PS: подобные задания доступны при подписке от 1 месяца
Также стоит посмотреть