Задать вопрос
@SilentGr0ve
Первокурсник

Как правильно описывать архитектуру для REST API приложения?

Я начал писать свое полноценное REST-API приложение на Go, но проблема описания архитектуры приложения мне остается не совсем понятной. Я понял суть разделения на трехслойную архитектуру, но последующие внутренние архитектурные нюансы в каждом источнике отличаются настолько, что не могу уловить какой-то общий паттерн (как, например, описываются логгирование, конфиги, роутинг).
Так, например, в рамках одного из видео по написанию REST-API была предложена такая схема (она не полная, но суть, я думаю, понятна):
0e20550e8dfa5ee8d752c75df635b13e.png

Подскажите, пожалуйста, источники, где к этому можно обратиться.
  • Вопрос задан
  • 107 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Нетология
    Go-разработчик с нуля + нейросети
    9 месяцев
    Далее
  • Академия Эдюсон
    GO-разработчик: тариф PRO
    4 месяца
    Далее
  • Stepik
    GOLANG NINJA. Искусство работы с ошибками и безмолвной паники
    4 недели
    Далее
Пригласить эксперта
Ответы на вопрос 2
opium
@opium
Просто люблю качественно работать
qiangxue/go-rest-api на гитхабе — там cmd/internal/pkg с разбивкой по фичам, сразу видно где logger, где config, где роутер. Ещё go.dev/doc/modules/layout — официальная дока. golang-standards/project-layout тоже смотрят, но это не стандарт, а community-сборник. Вариаций много, единого правильного нет.
Ответ написан
Комментировать
VoidVolker
@VoidVolker
Dark side eye. А у нас печеньки! А у вас?
Минимум:
  • Схема/диаграмма взаимодействия с API, а так же внутренней логики
  • Документация по всем методам/точкам входа
  • По параметрам методов
  • Возвращаемому результату
  • Ограничения самого API, методов и параметров
  • Подробное описание ошибок и кодов ошибок

Остальное — в зависимости от особенностей конкретного API и фантазии разработчика.
Пример описания схемы работы API

5bd748db6d572869658821.png
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы