Size: a a a

Software Design/Architecture/Zen

2021 January 12

SP

Sergey Protko in Software Design/Architecture/Zen
ладно
источник

IS

I Scarab in Software Design/Architecture/Zen
Sergey Protko
с такой идеологией вместо "писать и проектировать апишки" надо "проектировать базы и вешать сверху готовые гейтвеи"
VMware, например, так реализована.
Там любая операция с виртуалкой есть сущность "действие", у которого есть свой жизненный цикл, можно подёргать посмотреть статус и так далее.
источник

SP

Sergey Protko in Software Design/Architecture/Zen
но вообще вот эта штука с "существительными" - это весьма второстепенная штука в REST. Там главное просто уникально идентицифируемые ресурсы (и не важно если ресурс глаголом обзывается)
источник

SP

Sergey Protko in Software Design/Architecture/Zen
уникальная идентификация ресурса (что бы кэшить можно было), идемпотентность ииии все
источник

SP

Sergey Protko in Software Design/Architecture/Zen
боль обычно когда ресурс один а репзентаций данных много, и уже кэшить не выйдет
источник

HH

Human Human in Software Design/Architecture/Zen
I Scarab
Вообще в идеологии REST рекомендуется оперировать объектами, а не действиями.
Возможно, правильнее сделать сущность "сеанс редактирования" со своим неким id. При создании - вешать лок. При завершении - лок снимать. Изменения в процессе редактирования - ну их может быть 0 или больше.
А в чем профиты данных ограничений?

ps решил сделать так в результате
/schedule/start-editing
/schedule/continue-editing
/schedule/change
/schedule/no-change
источник

SP

Sergey Protko in Software Design/Architecture/Zen
всеравно ваши эти REST апишки это просто json rpc via http
источник

SP

Sergey Protko in Software Design/Architecture/Zen
то о чем ты говоришь больше про конвеншен для разработчиков что бы семантика и "найти нужный метод" было проще
источник

HH

Human Human in Software Design/Architecture/Zen
Sergey Protko
всеравно ваши эти REST апишки это просто json rpc via http
Только еще + год на то, чтобы понять какой статус http нужно вернуть)
источник

IS

I Scarab in Software Design/Architecture/Zen
Human Human
А в чем профиты данных ограничений?

ps решил сделать так в результате
/schedule/start-editing
/schedule/continue-editing
/schedule/change
/schedule/no-change
профит в том, что у тебя есть объект, а не действие.
"глагол" удобен тогда, когда у тебя одиночная операция. А "повесить лок", "отредактировать", "снять лок" - это уже сеанс редактирования, который просто напрашивается на вынесение  в сущность.
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Human Human
Только еще + год на то, чтобы понять какой статус http нужно вернуть)
200 если все хорошо, 4xx если у клиента все плохо или он не успел или сначала деньги потом шоу, 5xx - бэкэндщик или опс мудаки
источник

SP

Sergey Protko in Software Design/Architecture/Zen
всеравно http статус кодов тебе не хватит для описания всех кейсов и придется вводить свои коды ошибок
источник

АГ

Алексей Гевондян... in Software Design/Architecture/Zen
I Scarab
профит в том, что у тебя есть объект, а не действие.
"глагол" удобен тогда, когда у тебя одиночная операция. А "повесить лок", "отредактировать", "снять лок" - это уже сеанс редактирования, который просто напрашивается на вынесение  в сущность.
имитация стейтфул сервиса
источник

R

Roman in Software Design/Architecture/Zen
Sergey Protko
200 если все хорошо, 4xx если у клиента все плохо или он не успел или сначала деньги потом шоу, 5xx - бэкэндщик или опс мудаки
Попытки натянуть процессы бизнес-логики на коды ответов -  печальное зрелище
источник

HH

Human Human in Software Design/Architecture/Zen
I Scarab
профит в том, что у тебя есть объект, а не действие.
"глагол" удобен тогда, когда у тебя одиночная операция. А "повесить лок", "отредактировать", "снять лок" - это уже сеанс редактирования, который просто напрашивается на вынесение  в сущность.
Хм, но мне не нужен доп объект тут. У меня просто меняется состояние одного лока и id юзера.
Но все еще не понимаю в чем профит этой лишней сущности?
источник

IS

I Scarab in Software Design/Architecture/Zen
Алексей Гевондян
имитация стейтфул сервиса
да, что-то такое. Спасибо. Слово умное забыл )
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Алексей Гевондян
имитация стейтфул сервиса
врядли ты знаешь что такое стэйтлесс/стэйтфул в этом контексте. Похоже на очередной наброс умных слов значений которых ты не понимаешь
источник

АГ

Алексей Гевондян... in Software Design/Architecture/Zen
ну стейтфул это когда несколько запросов объединены в группу, и нельзя их выполнить в произвольном порядке или часть из них. а в стейтлесс сервисе 1 запрос -  самостоятельная и независимая операция
источник

DT

Dmitriy Tkachenko in Software Design/Architecture/Zen
Или можно попробовать перевести эти термины
источник

DT

Dmitriy Tkachenko in Software Design/Architecture/Zen
Может понятнее станет
источник