Как передать на бекенд требования к API?

Всем привет, у нас в команде есть вопрос относительно рабочего процесса по разработке API.

Дизайнер нарисовал экраны и собрал прототип приложения.
Клиент сказал - погнали!

Что дальше? Кто должен начать разрабатывать API: фронтенд или бекенд?

Логичнее всего, фронтенд разработчики лучшего всего понимают какие данные и откуда нужно вывести в дизайне. Конечно, есть Open API и Swagger которые прекрасно работают на небольших проектах. И вопрос, не в том, что Swagger плох, а его просто не удобно редактировать и поддерживать в будущем.

Сейчас фронты делают отдельный GIT репозитарий, где пишут Swagger через YAML, разбивают все по файлам, потом мы добавляем это в CI и в итоге требования к API публикуются на https://spec-api.project.com Ребята из бэка видят требования отсюда, но поддерживать в будущем такую спецификацию становится сложнее. Что бы что-то поменять: нужно перейти в репозитарий, закомиттить, дождаться CI и т.д.

Кто-нибудь видел Swagger в стиле Google Docs или Notion с доступом по ссылке?

Так же к Swagger хотелось бы фичу по привязке областей дизайна к API. Типа выделил область и сказал, тут вызывается /cities?q= и главное, всегда известно какие ендпойнты в какой части приложения дергаются.

Накидали небольшой скетч идеи. Что скажите? Может быть полезно?
6193819401a11288298281.png
  • Вопрос задан
  • 97 просмотров
Пригласить эксперта
Ответы на вопрос 2
vabka
@vabka
Токсичный шарпист
Кто должен начать разрабатывать API: фронтенд или бекенд?

Совместно, исходя из требований.
Какие данные нужны для бизнес-процесса, и как эти данные будет использовать фронт.
Исходя из этого можно договориться об API.
Реализацией заниматься должны только бэкендеры

Конечно, есть Open API и Swagger которые прекрасно работают на небольших проектах. И вопрос, не в том, что Swagger плох, а его просто не удобно редактировать и поддерживать в будущем.

Большинство фреймворков умеют генерировать OpenAPI спецификацию по исходникам, либо наоборот - реализацию по спецификации.

Кто-нибудь видел Swagger в стиле Google Docs или Notion с доступом по ссылке?

Зачем в стиле гуглодоков, когда есть swaggerUI? А доступ по ссылке можно реализовать буквально в пару строчек.

Так же к Swagger хотелось бы фичу по привязке областей дизайна к API. Типа выделил область и сказал, тут вызывается /cities?q= и главное, всегда известно какие ендпойнты в какой части приложения дергаются.

Накидали небольшой скетч идеи. Что скажите? Может быть полезно?

Лично мне кажется, что это фича ради фичи.
Какие ендпоинты где дёргаются - это фронты и так хорошо знают.
Бэкендеру знать о том, как работает фронт не обязательно.
Дизайнеру также не нужно думать о деталях реализации.
Ответ написан
AgentSmith
@AgentSmith
agent
Логичнее всего, фронтенд разработчики лучшего всего понимают какие данные и откуда нужно вывести в дизайне.

Нет, это абсолютно неверно.
Требования к бэкенду всегда выше, чем к фронтенду, поэтому бэкенд лучше понимает что и как можно отдавать фронту, а что нельзя.
Фронтенд подчиняется бэкенду
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы