Size: a a a

Боль Тимлида

2021 May 26

ВК

Владислав Козуля... in Боль Тимлида
У нас технический дефолт, хочу 1 раз написать сложные модули и просунуть везде, чтобы не писать заново [на каждой платформе]
источник

ВК

Владислав Козуля... in Боль Тимлида
Я почитал, где там может быть жопа, посмотрел на adoption в разных компаниях — пока выглядит довольно неплохо. Сейчас попробую начать с каких-то мелких вещей, потом пойду выносить стейт-менеджер туда
источник

PD

Phil Delgyado in Боль Тимлида
Ну, будет интересно послушать!
источник

PD

Phil Delgyado in Боль Тимлида
А как там общение с платформой сделано? Абстракция или под каждую свой код просто можно написать?
источник

PD

Phil Delgyado in Боль Тимлида
А то я бы общие части с Дарта на котлин с удовольствием перевел бы, но все равно от ui не уйти
источник

ВК

Владислав Козуля... in Боль Тимлида
Ты по сути выносишь код в общую либу, потом из нативного уже обращаешься туда. Вот пример https://github.com/anioutkazharkova/movies_kmp
источник

PD

Phil Delgyado in Боль Тимлида
А либа - нативная? Т.е. из того же дарта с ней работать уже не очень удобно? Да и из java?
источник

ВК

Владислав Козуля... in Боль Тимлида
Пока не разобрался, покурю на выходных
источник

LT

Lisa Tsareva in Боль Тимлида
ребят, если ссылка на Рому до вас не долетела - догоняйте, скоро начнем
источник

K

KoBa4oG in Боль Тимлида
на самом интересном месте
источник

NL

Nikita Lyalin in Боль Тимлида
Без оффтопа оставили ((
источник

K

KoBa4oG in Боль Тимлида
☹️
источник

SG

Sergey Golikov in Боль Тимлида
Как раз что-то про орфографические ошибки... =((
источник

SG

Sergey Golikov in Боль Тимлида
Как проверить кандидата на собесе: попросить написать слово "расти". Тема как раз про экстенсивный рост была.
источник

F

Flok in Боль Тимлида
Попросить написать слово "андроид". Пишет через "й" - нам не по пути)
источник

AO

Artem Olkov in Боль Тимлида
Котлин имеет конструкцию expect/actual, в экспекте пишешь ожидаемый интерфейс, в actual - платформенную реализацию. Из-за того что компилятор гарантирует что actual на момент компиляции один среди платформенных модулей - из общего кода он выглядит как обычный класс.
Либо делаешь по старинке, интерфейс-реализация средствами платформы-прокидывание вовнутрь.

Сам котлин не имеет обширной абстракции над андройд/йос, все нужно либо самому писать либо из сторонних либ подключать. Недавно дали общий тип для времени, уже хорошо :)

На стороне андройда понятно как платформа подключается, а на стороне йос весело. Котлин мм умеет брать С и обжц интерфейсы и прокидывать их в себя. То есть на самом Котлине можно спокойно ходить в Foundation ios, да хоть в uikit. Это очень прикольная штука, но у нее есть местами проблемы - способы определения функций у котлина и обжц очень сильно отличаются, из-за чего иногда случается клэшинг имен. Это решаемая проблема, в целом, но может добавить боли.
источник

AO

Artem Olkov in Боль Тимлида
Либа получается нативная для платформы - в йос это динамический или статический фреймворк с обжц хедером, в андройде это просто котлин модуль. Для андройда есть третья смешная опция "скомпилировать нативный бинарь с хедером", но я не знаю зачем так делать :)
источник

AO

Artem Olkov in Боль Тимлида
Из флаттера с платформой кажется в целом не очень комфортно работать, но я видел прототипы и статьи в интернете, где ребята заводили эту историю :)
источник

АЛ

Артем Летюшев... in Боль Тимлида
Да не, норм работается
источник

АЛ

Артем Летюшев... in Боль Тимлида
Либо пишешь оболочку свою, либо дергаешь через мосты. По крайней мере мои разрабы обычно так проворачивали
источник