Size: a a a

Kotlin Community

2020 April 06

I

Igor in Kotlin Community
Sergey Bezrukov
Backend OpenAPI -> multiplatform ktor client  
Не всегда работает без напильника, но в целом уже можно пользоваться
Можно пример?
Если хотя бы для 2-х разных сущностей сделать CRUD методы
источник

AN

Alexander Nozik in Kotlin Community
Igor
Можно пример?
Если хотя бы для 2-х разных сущностей сделать CRUD методы
Примера нет, но у меня аспирант делал через сваггер
источник

AN

Alexander Nozik in Kotlin Community
а, это не совсем то.
источник

SB

Sergey Bezrukov in Kotlin Community
Igor
Можно пример?
Если хотя бы для 2-х разных сущностей сделать CRUD методы
1. На бэке генерим OpenAPI файл
2. Используем https://github.com/icerockdev/moko-network для получения ktor-client из полученного на первом шаге OpenAPI

При этом DTO-шки будут разные, но в целом это довольно удобно т.к. бэк вовсе не обязан быть на котлине (у нас на яве в основном)
источник

I

Igor in Kotlin Community
Ну те swagger aka openapi - kmp то тут не причем, это можно сделать на любом языке
источник

VP

Vladimir Petrakovich in Kotlin Community
Alexander Nozik
Котлин-мультиплатформа и REST API нИ нужОн
Всех клиентов тоже на котлин пересаживать? 😄
источник

AN

Alexander Nozik in Kotlin Community
Vladimir Petrakovich
Всех клиентов тоже на котлин пересаживать? 😄
Ну это штука была. Какой вопрос - такой и ответ. Но вообще это вариант для маленьких приложух
источник

SB

Sergey Bezrukov in Kotlin Community
Igor
Ну те swagger aka openapi - kmp то тут не причем, это можно сделать на любом языке
Бэк - да. Но это представляется удобнее, чем шарить DTO, именно потому что у нас на котлине фронт и мобилы и в этом случае получается уже клиент с методами, а не просто набор ДТО.
источник

VP

Vladimir Petrakovich in Kotlin Community
Sergey Bezrukov
Бэк - да. Но это представляется удобнее, чем шарить DTO, именно потому что у нас на котлине фронт и мобилы и в этом случае получается уже клиент с методами, а не просто набор ДТО.
Т.е. очередная абстракция для RPC, которые клепаются уже десятилетиями?
источник

SB

Sergey Bezrukov in Kotlin Community
Vladimir Petrakovich
Т.е. очередная абстракция для RPC, которые клепаются уже десятилетиями?
Должны же быть какие-то вечные ценности )
источник

I

Igor in Kotlin Community
Блин я то уже подумал что для котлин завезли WCF или krpc (ну типа как grpc)
источник

AN

Alexander Nozik in Kotlin Community
Vladimir Petrakovich
Т.е. очередная абстракция для RPC, которые клепаются уже десятилетиями?
Не надо путать RPC с крудами. Основная сложность RPC - это колбэки. Если их нет, то все сущеееественно упрощается
источник

AN

Alexander Nozik in Kotlin Community
Igor
Блин я то уже подумал что для котлин завезли WCF или krpc (ну типа как grpc)
А зачем огород городить, если есть grpc? Мы сейчас летом будем делать сильно урезанный мультиплатформный ремоут колл, но он узко специализирован под математику будет.
источник

AN

Alexander Nozik in Kotlin Community
Без колбэков явных
источник

I

Igor in Kotlin Community
Что бы сложность уменьшить.

К примеру на f# у меня есть прототип где
- общие модельки
- НО один эндпоит, через который пересылаются изменения общего стейта

получается такой статически типизированный firebase

PS ну и плюс выразительности типов в grpc гораздо слабее kotlin типов
источник

OY

Oleg Yukhnevich in Kotlin Community
Alexander Nozik
Не надо путать RPC с крудами. Основная сложность RPC - это колбэки. Если их нет, то все сущеееественно упрощается
а что ты имеешь ввиду под callback-ом?
источник

AN

Alexander Nozik in Kotlin Community
Oleg Yukhnevich
а что ты имеешь ввиду под callback-ом?
Кода один из аргументов - произвольная функция
источник

AN

Alexander Nozik in Kotlin Community
Igor
Что бы сложность уменьшить.

К примеру на f# у меня есть прототип где
- общие модельки
- НО один эндпоит, через который пересылаются изменения общего стейта

получается такой статически типизированный firebase

PS ну и плюс выразительности типов в grpc гораздо слабее kotlin типов
Много раз пытались сделать полный RPC с поддержкой всего-всего. Это тупик. Все упирается в эти самые колбэки и захват переменных окружения, так что всегда придется работать с чем-то урезанным
источник

OY

Oleg Yukhnevich in Kotlin Community
Alexander Nozik
Кода один из аргументов - произвольная функция
я с таким просто не встречался, но если я правильно понимаю суть в том, чтобы сереализовать коллбэк, послать его на сервер, там его выполнить и вернуть результат?
так что ли?
источник

FN

Fly N in Kotlin Community
Пытаюсь сделать как-то покрасивее с помощью функций kotlin stdlib- есть 2 списка элементов, первый состоит из элементов, одним из свойств которого является элемент из второго списка. Мне нужно смержить их, пока кроме forEach/onEach не придумал
источник