1. Backend - серверная часть веб-приложения, отвечающая за обработку запросов, выполнение бизнес-логики, управление доступом и хранение данных. Сервер получает информацию от клиента, проверяет её, выполняет необходимые операции и формирует ответ. Серверная часть не должна без проверки доверять данным, переданным браузером.

 

2. Маршрутизация - механизм сопоставления HTTP-метода и адреса запроса с определённым обработчиком. Например, GET /api/students может использоваться для получения списка студентов. Контроллер принимает параметры и тело запроса, обращается к сервисному слою и возвращает HTTP-ответ с соответствующим статусом.

 

3. Сервисный слой содержит бизнес-логику приложения, то есть правила выполнения операций. Например, сервис регистрации студентов может проверять наличие свободных мест на курсе. Отделение бизнес-логики от контроллеров упрощает тестирование, сопровождение и изменение приложения. Контроллер отвечает за HTTP-взаимодействие, а сервис — за правила предметной области.

 

4. Базы данных используются для долговременного хранения информации. Система управления базами данных обеспечивает создание, изменение, удаление и получение записей. ORM (Object-Relational Mapping) - технология, связывающая программные объекты с таблицами реляционной базы данных. ORM упрощает работу с данными, однако разработчику также необходимо понимать SQL, индексы и особенности выполнения запросов.

 

5. Транзакция - механизм объединения нескольких связанных операций с данными в единое действие. При успешном выполнении изменения подтверждаются, а при ошибке могут быть отменены. Это помогает сохранять целостность данных. Серверная валидация проверяет обязательные поля, форматы и допустимые значения. Обработка ошибок позволяет возвращать пользователю понятные сообщения, не раскрывая внутренние подробности системы. Техническая информация об исключениях должна сохраняться в защищённых журналах.