Size: a a a

Боль Тимлида

2021 November 18

VF

Victor Fabrichenko in Боль Тимлида
Ну реально мы сложность не прячем, а наоборот выставляем на показ и заставляем генерировать тонны никому не нужного кода, зачем?
источник

AM

Andrei Moiseev in Боль Тимлида
Ну, у нас все сервисы на Java и если сервис предоставляет какой-то апи для других сервисов, то мы делаем в рамках сервиса Java SDK. Но у нас также фронт и мобилка может нашими апи пользоваться, или в каких-то случаях тех.поддержка или тестировщики могут ручки в постамане подергать. Поэтому, полность абстрагироваться от представления не получится.
источник

VF

Victor Fabrichenko in Боль Тимлида
Думаю и фронт и мобилка у себя все равно сделали обертки и не сами их придумали, а посмотрели как у вас это сделано в сдк
источник

VF

Victor Fabrichenko in Боль Тимлида
Ну или прочитали описание, где вы прописали типичное поведение
источник

SG

Sergey Golikov in Боль Тимлида
Так вопрос генерации/написания клиентских либ к дизайну самого api особого отношения не имеет. Тут же речь за дизайн шла, а не за то, как потом либы делать
источник

AM

Andrei Moiseev in Боль Тимлида
Сильно сомневаюсь. К тому же, апи для фронта и апи для других сервисов - это в общем случае разные множества.
источник

VF

Victor Fabrichenko in Боль Тимлида
Так дизайн апи либы и дизайн апи сервиса это же вообще разные слои. Либа остается такой-же, а апи сервиса может поменяться
источник

AM

Andrei Moiseev in Боль Тимлида
Дизайн апи - это не только про схему путей, это не самая большая и не самая сложная часть. Более интересные моменты - как работать с фильтрацией, пагинацией, сортировками. Еще интереснее - батчи, транзакции, асинхронные операции и т.п.
источник

AB

Aleksandr Bespalov in Боль Тимлида
А как делать транзакции в апи?
источник

AM

Andrei Moiseev in Боль Тимлида
Представление ошибок еще
источник

SG

Sergey Golikov in Боль Тимлида
да, просто все разговоры за rest/rpc - это про дизайн api. Как-то незаметно перешли на либы )
источник

AB

Aleksandr Bespalov in Боль Тимлида
Перешли пушо за либой дизайн уже не так важен, он важнее серверу, не клиенту
источник

SG

Sergey Golikov in Боль Тимлида
есть же openapi, зачем в sdk подклядывать
источник

AM

Andrei Moiseev in Боль Тимлида
Зависит от потребностей. Я в целом стараюсь не тащить транзакции на уровень апи. Ну и транзакции - не в смысле транзакций БД, а в смысле бизнес-транзакций, конечно.
источник

VF

Victor Fabrichenko in Боль Тимлида
Я о том, что дизайн апи сервиса в целом никого особо (кроме разработчиков апи) не волнует, погромист хочет кусок кода, который он скопипастит
источник

AB

Aleksandr Bespalov in Боль Тимлида
Волнует порядок в апи, на самом деле, иначе программист тоже будет страдать
источник

PD

Phil Delgyado in Боль Тимлида
У тебя в этом клиенте - какие методы будут?
Проблема же именно в этом.
Не важно, рисовать API для этой библиотеки или API для межсервисного взаимодействия, все равно нужно его продумывать.
И это сложно (
источник

AB

Aleksandr Bespalov in Боль Тимлида
Т.е. как раз дизайн
источник

VF

Victor Fabrichenko in Боль Тимлида
Я не говорю что придумывать апи просто, я говорю, что апи сервера и апи клиента это разные задачи совершенно
источник

VF

Victor Fabrichenko in Боль Тимлида
ну если у меня есть кусок кода с поведением, то я не переживаю, как там оно внутри работает
источник