Size: a a a

Kotlin Community

2020 December 09

D

Dmitry in Kotlin Community
Причем тут котлин?
источник

RI

Ruslan Ibragimov in Kotlin Community
Dmitry
Причем тут котлин?
KMM
источник

D

Dmitry in Kotlin Community
Как одна из 3 возможных технологий
источник

RI

Ruslan Ibragimov in Kotlin Community
Dmitry
Как одна из 3 возможных технологий
Да, не просто реклама KMM the Best!11 А сравнение и pros/cons
источник

AM

Andrew Mikhaylov in Kotlin Community
Dmitry
Как одна из 3 возможных технологий
Ну да. Потому если кто-то интересуется, ему наверняка будет интересно — и на использование посмотреть, и на сравнение с соедями. Самое оно
источник

D

Denys in Kotlin Community
Ruslan Ibragimov
14 декабря стартует первая конференция про кроссплатформенную мобильную разработку – Podlodka Crossplatform Crew!

А это значит, что вас ждет:
🔹неделя интенсивов и воркшопов по кроссплатформенным технологиям
🔹общение с крутейшими экспертами и другими участниками комьюнити
🔹куча новых практик и идей, которые можно унести в свой багаж

Никаких “Hello World!” на абстрактных примерах, только настоящий опыт внедрения и использования кроссплатформы в реальных проектах от топовых экспертов.

С нами вы:

— Узнаете, реально ли Flutter экономит деньги Surf и как они к этому пришли. Или это все просто хайп?
— Унесете в копилочку лучшие практиках применения Kotlin Multiplatform Mobile в Cash App, разработанном в Square.
— Разгадаете, почему в Shopify еще пишут на React Native, когда Airbnb уже давно поставил на нем жирный крест?
— Научитесь преодолевать технические челленджи, которые обязательно встретятся вам, если вы решите интегрировать Flutter или KMM в ваш текущий проект
— Потренируетесь готовить свою команду к внедрению кроссплатформы: изменения придут не только в кодовую базу, но и в ваши процессы!
— Запасетесь рабочими аргументами и психологическими техниками, которые помогут продать кроссплатформу вашему СTO
— Расширите свой кругозор и разберетесь, в каких случаях альтернативная кроссплатформа (Xamarin, Gomobile и Capactor) могут сработать покруче хайповых технологий!
— Выясните реальные особенности и проблемы  популярных решений, про которые не расскажут ни на одном докладе — ПРОЖАРКА не пощадит никого!

👉🏻 Купить билет и посмотреть расписание можно тут 👈🏻
Бутлеги будут? 😁
источник

AM

Andrew Mikhaylov in Kotlin Community
Denys
Бутлеги будут? 😁
Бутлеги за отдельную мзду после конференции можно приобрести. По крайней мере с прошлыми крю было так.
источник

AM

Andrew Mikhaylov in Kotlin Community
Ну и часть сессий они обычно публикуют в открытый доступ :)
источник

AA

Anton Arhipov in Kotlin Community
Oleg Yukhnevich
А dokka сильно хуже?)
Вроде ж тоже красиво и удобно делает
dokka - для генерации документации из исходников. То в чём общая документация написана - это отдельная штука.
источник

OY

Oleg Yukhnevich in Kotlin Community
Anton Arhipov
dokka - для генерации документации из исходников. То в чём общая документация написана - это отдельная штука.
Да, я уже понял)
источник

AP

Anton Potekhin in Kotlin Community
Господа знатоки объясните пожалуйста почему если я пишу вот так:
val ssBuilder = SpannableStringBuilder(charSequence)
ssBuilder.setSpan(TextAppearanceSpanUnderlined(context, linkStyle),
       start, end, flags
)

private class TextAppearanceSpanUnderlined(context: Context, appearance: Int)
   
: TextAppearanceSpan(context, appearance) {
   
override fun updateDrawState(ds: TextPaint) {
       
super.updateDrawState(ds)
       
ds.isUnderlineText = false
   
}
}


Все хорошо работает.

Но вот если я напишу вот так (используя анонимный класс):
ssBuilder.setSpan(object : TextAppearanceSpan(context, linkStyle) {
   
override fun updateDrawState(ds: TextPaint) {
       
super.updateDrawState(ds)
       
ds.isUnderlineText = false
   
}
}
, start, end, flags)

То leakcanary будет ругаться что у меня утечка. Почему утечка с анонимным классом получается и можно ли ее избежать с анонимным классом?
источник

QH

Quantum Harmonizer in Kotlin Community
Anton Potekhin
Господа знатоки объясните пожалуйста почему если я пишу вот так:
val ssBuilder = SpannableStringBuilder(charSequence)
ssBuilder.setSpan(TextAppearanceSpanUnderlined(context, linkStyle),
       start, end, flags
)

private class TextAppearanceSpanUnderlined(context: Context, appearance: Int)
   
: TextAppearanceSpan(context, appearance) {
   
override fun updateDrawState(ds: TextPaint) {
       
super.updateDrawState(ds)
       
ds.isUnderlineText = false
   
}
}


Все хорошо работает.

Но вот если я напишу вот так (используя анонимный класс):
ssBuilder.setSpan(object : TextAppearanceSpan(context, linkStyle) {
   
override fun updateDrawState(ds: TextPaint) {
       
super.updateDrawState(ds)
       
ds.isUnderlineText = false
   
}
}
, start, end, flags)

То leakcanary будет ругаться что у меня утечка. Почему утечка с анонимным классом получается и можно ли ее избежать с анонимным классом?
а куда вообще девается билдер, что утечка происходит?
(ушли в @android_ru)
источник

VP

Vladimir Petrakovich in Kotlin Community
а чё всмысле
источник

AN

Alexander Nozik in Kotlin Community
Vladimir Petrakovich
а чё всмысле
ага
источник

VP

Vladimir Petrakovich in Kotlin Community
Мотивация данного ограничения совершенно не ясна
источник

QH

Quantum Harmonizer in Kotlin Community
как и с локальными тайпалиасами
источник

AN

Alexander Nozik in Kotlin Community
Vladimir Petrakovich
Мотивация данного ограничения совершенно не ясна
Подозреваю, что чтобы компилятор не взорвался. @ilmirus ?
источник

AL

Anton Lakotka in Kotlin Community
Quantum Harmonizer
как и с локальными тайпалиасами
вроде как все, что инлайновое, все топ-левел
источник

QH

Quantum Harmonizer in Kotlin Community
Anton Lakotka
вроде как все, что инлайновое, все топ-левел
функции везде можно инлайн
источник

AL

Anton Lakotka in Kotlin Community
источник