Ускоряем поиск по коду в Android Studio
Рассмотрим возможности Android Studio, позволяющие быстрее ориентироваться в коде: находить нужные фрагменты и выявлять связи между ними.
Если вы опытный пользователь, то вам известно большинство нижеперечисленных лайфхаков. Но я узнавал о многих возможностях случайно, через многие месяцы работы в Android Studio, поэтому хочу рассказать всё, везде и сразу.
Читать статью
Рассмотрим возможности Android Studio, позволяющие быстрее ориентироваться в коде: находить нужные фрагменты и выявлять связи между ними.
Если вы опытный пользователь, то вам известно большинство нижеперечисленных лайфхаков. Но я узнавал о многих возможностях случайно, через многие месяцы работы в Android Studio, поэтому хочу рассказать всё, везде и сразу.
Читать статью
Teletype
Ускоряем поиск по коду в Android Studio
Рассмотрим возможности Android Studio, позволяющие быстрее ориентироваться в коде: находить нужные фрагменты и выявлять связи между ними.
Модификатор noinline
Если же вы хотите, чтобы некоторые лямбды, переданные inline-функции, не были встроены, то отметьте их модификатором noinline.
Если же вы хотите, чтобы некоторые лямбды, переданные inline-функции, не были встроены, то отметьте их модификатором noinline.
inline fun foo(inlined: () -> Unit, noinline notInlined: () -> Unit) {Разница между ними в том, что встраиваемая лямбда может быть вызвана только внутри inline-функции, либо может быть передана в качестве встраиваемого аргумента. В то время как с noinline-функциями можно работать без ограничений: хранить внутри полей, передавать куда-либо и т.д.
// ...
}
Создаем нативное Kotlin приложение на Spring Boot Native, Gradle и GraalVM без докера под MacOS и Windows
В этой статье я хочу рассказать о практическом опыте нативной компиляции production приложения, написанного на Kotlin со Spring Boot, Gradle с использованием GraalVM . Начну сразу с минусов и плюсов самой возможности нативной компиляции и где она может быть полезна, и дальше перейду уже непосредственно к процессу сборки под MacOS и Windows.
В конце статьи я более подробно расскажу о проекте и почему возникла такая необходимость, учитывая довольно много ограничений и подводных камней поддержки нативной компиляции как со стороны Spring Boot, та и со стороны GraalVM.
Читать статью
В этой статье я хочу рассказать о практическом опыте нативной компиляции production приложения, написанного на Kotlin со Spring Boot, Gradle с использованием GraalVM . Начну сразу с минусов и плюсов самой возможности нативной компиляции и где она может быть полезна, и дальше перейду уже непосредственно к процессу сборки под MacOS и Windows.
В конце статьи я более подробно расскажу о проекте и почему возникла такая необходимость, учитывая довольно много ограничений и подводных камней поддержки нативной компиляции как со стороны Spring Boot, та и со стороны GraalVM.
Читать статью
Teletype
Создаем нативное Kotlin приложение на Spring Boot Native, Gradle и GraalVM без докера под MacOS и Windows
В этой статье я хочу рассказать о практическом опыте нативной компиляции production приложения, написанного на Kotlin со Spring Boot...
Что такое нелокальный return?
В Котлин non-local return — это механизм, который позволяет выйти из внешней функции или лямбда-выражения и вернуться к вызывающему коду, обходя оставшуюся часть текущей функции или лямбда-выражения. Он работает по-разному в зависимости от того, является ли функция inline или не-inline.
В не-inline функциях:
Если внутри функции есть лямбда-выражение, non-local return из лямбда-выражения может привести к нелокальному завершению внешней функции.
Для использования non-local return внутри лямбда-выражения в не-inline функции, необходимо использовать метку (label) и оператор
В inline-функциях:
В inline-функциях, лямбда-выражения становятся частью кода функции и имеют локальный контроль над потоком управления.
Оператор
В Котлин non-local return — это механизм, который позволяет выйти из внешней функции или лямбда-выражения и вернуться к вызывающему коду, обходя оставшуюся часть текущей функции или лямбда-выражения. Он работает по-разному в зависимости от того, является ли функция inline или не-inline.
В не-inline функциях:
Если внутри функции есть лямбда-выражение, non-local return из лямбда-выражения может привести к нелокальному завершению внешней функции.
Для использования non-local return внутри лямбда-выражения в не-inline функции, необходимо использовать метку (label) и оператор
return@label
.В inline-функциях:
В inline-функциях, лямбда-выражения становятся частью кода функции и имеют локальный контроль над потоком управления.
Оператор
return
внутри лямбда-выражения в inline-функции приведет только к завершению самого лямбда-выражения, не влияя на внешнюю функцию.Реализуем современный UI на Jetpack Compose
Всем привет, на связи Никита Пятаков, Android-разработчик в МТС Диджитал. В этой статье я расскажу вам о том, как в приложении Мой МТС была проведена работа над UI новой карточки услуги. Рассказ мой будет последовательным – сначала про саму задачку, потом про решение, которое разбито на подпункты.
Читать статью
Всем привет, на связи Никита Пятаков, Android-разработчик в МТС Диджитал. В этой статье я расскажу вам о том, как в приложении Мой МТС была проведена работа над UI новой карточки услуги. Рассказ мой будет последовательным – сначала про саму задачку, потом про решение, которое разбито на подпункты.
Читать статью
Teletype
Реализуем современный UI на Jetpack Compose
Всем привет, на связи Никита Пятаков, Android-разработчик в МТС Диджитал. В этой статье я расскажу вам о том, как в приложении Мой МТС...
#вакансия #удалённо #parttime #преподаватель #Kotlin
OTUS – образовательная платформа. У нас авторские курсы разной степени сложности, вступительное тестирование для студентов и преподаватели-практики из крупнейших компаний.
Вакансия: преподаватель онлайн-курса Kotlin Backend Developer. Professional. Можно без опыта преподавания, мы поможем вам освоить best practices.
Требования:
- глубокое знание backend разработки;
- знание Java и ее основных фреймворков;
- опыт разработки на Kotlin от 2 лет.
Преподаватель раскрывает тему с помощью теории и примеров из практики. Можно выбрать удобную нагрузку и темы занятий, вебинары проходят в Zoom. Дни занятий – Ср с 19:00 до 20:30 и Сб с 11:00 до 12:30 мск. Есть материалы к занятиям.
С нами вы сможете ✅
- структурировать свой опыт и знания;
- прокачать софт-скиллы;
- получать от 4000 до 6000 руб за один вебинар (полтора часа) + отдельно оплачивается проверка ДЗ (эта активность на ваше усмотрение).
Бонусы 🎁
- наши курсы со скидкой/бесплатно;
- можно приглашать лучших выпускников к себе на работу;
- воркшопы и конференции для наших преподавателей.
Обсудить подробнее @yu_grin
OTUS – образовательная платформа. У нас авторские курсы разной степени сложности, вступительное тестирование для студентов и преподаватели-практики из крупнейших компаний.
Вакансия: преподаватель онлайн-курса Kotlin Backend Developer. Professional. Можно без опыта преподавания, мы поможем вам освоить best practices.
Требования:
- глубокое знание backend разработки;
- знание Java и ее основных фреймворков;
- опыт разработки на Kotlin от 2 лет.
Преподаватель раскрывает тему с помощью теории и примеров из практики. Можно выбрать удобную нагрузку и темы занятий, вебинары проходят в Zoom. Дни занятий – Ср с 19:00 до 20:30 и Сб с 11:00 до 12:30 мск. Есть материалы к занятиям.
С нами вы сможете ✅
- структурировать свой опыт и знания;
- прокачать софт-скиллы;
- получать от 4000 до 6000 руб за один вебинар (полтора часа) + отдельно оплачивается проверка ДЗ (эта активность на ваше усмотрение).
Бонусы 🎁
- наши курсы со скидкой/бесплатно;
- можно приглашать лучших выпускников к себе на работу;
- воркшопы и конференции для наших преподавателей.
Обсудить подробнее @yu_grin
otus.ru
Курс по backend-разработке на Kotlin, Kotlin Backend Developer
Научитесь использовать язык Kotlin для разработки серверных приложений; создавать приложения для разных платформ с помощью Kotlin Multiplatform: JS, JVM, Native (Linux/Windows/MacOs/Android/iOS)
Как работает модификатор crossinline?
crossinline — ключевое слово, которое используется для указания, что лямбда-выражение не может содержать нелокальных return, даже если оно передано в inline-функцию.
Когда мы передаем лямбда-выражение в функцию в качестве параметра, мы можем использовать оператор return внутри лямбды, чтобы выйти из цикла или функции, в которой вызывается лямбда. Однако, если мы передаем лямбда-выражение в inline-функцию, код лямбда-выражения может быть вставлен прямо в место вызова функции. В этом случае, если в лямбде используется оператор return, это может привести к выходу из внешней функции, что не всегда желательно.
crossinline — ключевое слово, которое используется для указания, что лямбда-выражение не может содержать нелокальных return, даже если оно передано в inline-функцию.
Когда мы передаем лямбда-выражение в функцию в качестве параметра, мы можем использовать оператор return внутри лямбды, чтобы выйти из цикла или функции, в которой вызывается лямбда. Однако, если мы передаем лямбда-выражение в inline-функцию, код лямбда-выражения может быть вставлен прямо в место вызова функции. В этом случае, если в лямбде используется оператор return, это может привести к выходу из внешней функции, что не всегда желательно.
#вакансия #удалённо #parttime #преподаватель #Kotlin
OTUS – образовательная платформа. У нас авторские курсы разной степени сложности, вступительное тестирование для студентов и преподаватели-практики из крупнейших компаний.
Вакансия: преподаватель онлайн-курса Kotlin Backend Developer. Professional. Можно без опыта преподавания, мы поможем вам освоить best practices.
Требования:
- глубокое знание backend разработки;
- знание Java и ее основных фреймворков;
- опыт разработки на Kotlin от 2 лет.
Преподаватель раскрывает тему с помощью теории и примеров из практики. Можно выбрать удобную нагрузку и темы занятий, вебинары проходят в Zoom. Дни занятий – Ср с 19:00 до 20:30 и Сб с 11:00 до 12:30 мск. Есть материалы к занятиям.
С нами вы сможете ✅
- структурировать свой опыт и знания;
- прокачать софт-скиллы;
- получать от 4000 до 6000 руб за один вебинар (полтора часа) + отдельно оплачивается проверка ДЗ (эта активность на ваше усмотрение).
Бонусы 🎁
- наши курсы со скидкой/бесплатно;
- можно приглашать лучших выпускников к себе на работу;
- воркшопы и конференции для наших преподавателей.
Обсудить подробнее @yu_grin
OTUS – образовательная платформа. У нас авторские курсы разной степени сложности, вступительное тестирование для студентов и преподаватели-практики из крупнейших компаний.
Вакансия: преподаватель онлайн-курса Kotlin Backend Developer. Professional. Можно без опыта преподавания, мы поможем вам освоить best practices.
Требования:
- глубокое знание backend разработки;
- знание Java и ее основных фреймворков;
- опыт разработки на Kotlin от 2 лет.
Преподаватель раскрывает тему с помощью теории и примеров из практики. Можно выбрать удобную нагрузку и темы занятий, вебинары проходят в Zoom. Дни занятий – Ср с 19:00 до 20:30 и Сб с 11:00 до 12:30 мск. Есть материалы к занятиям.
С нами вы сможете ✅
- структурировать свой опыт и знания;
- прокачать софт-скиллы;
- получать от 4000 до 6000 руб за один вебинар (полтора часа) + отдельно оплачивается проверка ДЗ (эта активность на ваше усмотрение).
Бонусы 🎁
- наши курсы со скидкой/бесплатно;
- можно приглашать лучших выпускников к себе на работу;
- воркшопы и конференции для наших преподавателей.
Обсудить подробнее @yu_grin
otus.ru
Курс по backend-разработке на Kotlin, Kotlin Backend Developer
Научитесь использовать язык Kotlin для разработки серверных приложений; создавать приложения для разных платформ с помощью Kotlin Multiplatform: JS, JVM, Native (Linux/Windows/MacOs/Android/iOS)
Когда нужно использовать crossinline, а когда noinline?
Модификаторы crossinline и noinline используются для управления поведением лямбда-выражений, переданных в качестве параметров функций. Они позволяют указывать, может ли лямбда-выражение содержать операторы return.
• Модификатор crossinline используется для указания того, что лямбда-выражение не может содержать операторы return, даже если функция, принимающая лямбда-выражение, инлайновая.
• Модификатор noinline, с другой стороны, указывает на то, что лямбда-выражение может быть сохранено как объект функции, а не выполнено внутри вызывающей функции. Это может быть полезно в случае, когда вы хотите использовать лямбда-выражение где-то ещё, например, как параметр для другой функции.
ВЫВОД: crossinline должен использоваться только тогда, когда вы уверены в том, что оператор return не будет использоваться внутри лямбда-выражения. Если лямбда-выражение должно содержать оператор return, то следует использовать ключевое слово noinline вместо crossinline.
Модификаторы crossinline и noinline используются для управления поведением лямбда-выражений, переданных в качестве параметров функций. Они позволяют указывать, может ли лямбда-выражение содержать операторы return.
• Модификатор crossinline используется для указания того, что лямбда-выражение не может содержать операторы return, даже если функция, принимающая лямбда-выражение, инлайновая.
• Модификатор noinline, с другой стороны, указывает на то, что лямбда-выражение может быть сохранено как объект функции, а не выполнено внутри вызывающей функции. Это может быть полезно в случае, когда вы хотите использовать лямбда-выражение где-то ещё, например, как параметр для другой функции.
ВЫВОД: crossinline должен использоваться только тогда, когда вы уверены в том, что оператор return не будет использоваться внутри лямбда-выражения. Если лямбда-выражение должно содержать оператор return, то следует использовать ключевое слово noinline вместо crossinline.
Хочешь научиться применять типовые оптимизации в разработке UI на Compose?
Ждем тебя на практическом открытом уроке от OTUS, где мы разберем типовые оптимизации и как пользоваться инструментами профилирования Compose для эффективной разработки.
Вебинар будет полезен Android-разработчикам уровня Middle.
Спикер Абакар Магомедов — опытный специалист и наставник, Android-разработчик в Alfa Bank.
Встречаемся 13 июня в 20:00 мск в преддверии старта курса «Android Developer. Professional». Все участники вебинара получат специальную цену на обучение!
Регистрируйтесь прямо сейчас, чтобы посетить бесплатный урок: https://vk.cc/cxAD1t
Ждем тебя на практическом открытом уроке от OTUS, где мы разберем типовые оптимизации и как пользоваться инструментами профилирования Compose для эффективной разработки.
Вебинар будет полезен Android-разработчикам уровня Middle.
Спикер Абакар Магомедов — опытный специалист и наставник, Android-разработчик в Alfa Bank.
Встречаемся 13 июня в 20:00 мск в преддверии старта курса «Android Developer. Professional». Все участники вебинара получат специальную цену на обучение!
Регистрируйтесь прямо сейчас, чтобы посетить бесплатный урок: https://vk.cc/cxAD1t
Protobuf или Reflection в JNI
Вы когда нибудь задумывались, на сколько grpc быстрый. Да в сети, ему равных нет. Если вы гоняете маленькие сообщения, которые надо быстро доставить, то лучше grpc попростуне найти ( найти, но по мнению автору protobuf остается движком сериализации, поддерживающим большее кол-во языков ). Но насколько он хорош? Сможет ли он к примеру сравнится просто с нативными вызовами?
Попробуем сравнить это, но так как в обычной жизни нам это может не пригодится, то добавим еще одно условие - сравниваем как лучший способ взаимодействия с jni библиотекой.
Читать статью
Вы когда нибудь задумывались, на сколько grpc быстрый. Да в сети, ему равных нет. Если вы гоняете маленькие сообщения, которые надо быстро доставить, то лучше grpc попросту
Попробуем сравнить это, но так как в обычной жизни нам это может не пригодится, то добавим еще одно условие - сравниваем как лучший способ взаимодействия с jni библиотекой.
Читать статью
Teletype
Protobuf или Reflection в JNI
Вы когда-нибудь задумывались, насколько grpc быстрый. Да, в сети, ему равных нет. Если вы гоняете маленькие сообщения, которые надо...
#вакансия #удалённо #parttime #преподаватель #Kotlin
OTUS – образовательная платформа. У нас авторские курсы разной степени сложности, вступительное тестирование для студентов и преподаватели-практики из крупнейших компаний.
Вакансия: преподаватель онлайн-курса Kotlin Backend Developer. Professional. Можно без опыта преподавания, мы поможем вам освоить best practices.
Требования:
- глубокое знание backend разработки;
- знание Java и ее основных фреймворков;
- опыт разработки на Kotlin от 2 лет.
Преподаватель раскрывает тему с помощью теории и примеров из практики. Можно выбрать удобную нагрузку и темы занятий, вебинары проходят в Zoom. Дни занятий – Ср с 19:00 до 20:30 и Сб с 11:00 до 12:30 мск. Есть материалы к занятиям.
С нами вы сможете ✅
- структурировать свой опыт и знания;
- прокачать софт-скиллы;
- получать от 4000 до 6000 руб. за один вебинар (полтора часа) + отдельно оплачивается проверка ДЗ (эта активность на ваше усмотрение).
Бонусы 🎁
- наши курсы со скидкой/бесплатно;
- можно приглашать лучших выпускников к себе на работу;
- воркшопы и конференции для наших преподавателей.
Обсудить подробнее @yu_grin
OTUS – образовательная платформа. У нас авторские курсы разной степени сложности, вступительное тестирование для студентов и преподаватели-практики из крупнейших компаний.
Вакансия: преподаватель онлайн-курса Kotlin Backend Developer. Professional. Можно без опыта преподавания, мы поможем вам освоить best practices.
Требования:
- глубокое знание backend разработки;
- знание Java и ее основных фреймворков;
- опыт разработки на Kotlin от 2 лет.
Преподаватель раскрывает тему с помощью теории и примеров из практики. Можно выбрать удобную нагрузку и темы занятий, вебинары проходят в Zoom. Дни занятий – Ср с 19:00 до 20:30 и Сб с 11:00 до 12:30 мск. Есть материалы к занятиям.
С нами вы сможете ✅
- структурировать свой опыт и знания;
- прокачать софт-скиллы;
- получать от 4000 до 6000 руб. за один вебинар (полтора часа) + отдельно оплачивается проверка ДЗ (эта активность на ваше усмотрение).
Бонусы 🎁
- наши курсы со скидкой/бесплатно;
- можно приглашать лучших выпускников к себе на работу;
- воркшопы и конференции для наших преподавателей.
Обсудить подробнее @yu_grin
otus.ru
Курс по backend-разработке на Kotlin, Kotlin Backend Developer
Научитесь использовать язык Kotlin для разработки серверных приложений; создавать приложения для разных платформ с помощью Kotlin Multiplatform: JS, JVM, Native (Linux/Windows/MacOs/Android/iOS)
NoArchitecture Kotlin Compose
Статья про основные моменты использования Compose в Android разработке на примере простого приложения. Три таба в одном Activity. Обращение в сеть, парсинг Json. Немного анимации. Приложение сделано на коленке за пару дней.
Читать статью
Статья про основные моменты использования Compose в Android разработке на примере простого приложения. Три таба в одном Activity. Обращение в сеть, парсинг Json. Немного анимации. Приложение сделано на коленке за пару дней.
Читать статью
Teletype
NoArchitecture Kotlin Compose
Все начинается в setContent. ComposeGenAppTheme необязательна. Surface кстати внутри себя содержит простой Box. Не привычно формировать...
Приходите на наш Я.Субботник по JVM — 29 июня в Новосибирске!
Вас ждёт митап о том, как мы пишем код на Java, Scala и Kotlin.
В программе — доклады крутых спикеров, нетворкинг и афтерпати. Расскажем про pattern matching, процессы и факапы на складах Маркета, а еще про архитектуру наших систем.
Программа получилась насыщенной — зарегистрироваться можно по ссылке.
До встречи на Субботнике! ☀️
Вас ждёт митап о том, как мы пишем код на Java, Scala и Kotlin.
В программе — доклады крутых спикеров, нетворкинг и афтерпати. Расскажем про pattern matching, процессы и факапы на складах Маркета, а еще про архитектуру наших систем.
Программа получилась насыщенной — зарегистрироваться можно по ссылке.
До встречи на Субботнике! ☀️
Ключевое слово reified
reified — это ключевое слово, которое может быть использовано только в inline-функциях. reified позволяет получить информацию о типе generic-параметра во время выполнения программы. В обычном случае, информация о типах стирается и недоступна во время выполнения, но с помощью reified можно сохранять эту информацию и использовать в других частях приложения.
Несколько простых примеров применения:
1. Получить доступ к типу параметра во время выполнения
В этом примере мы определяем функцию printType() с типовым параметром T, который мы указываем с помощью reified. Внутри функции мы можем получить тип T во время выполнения, используя T::class. Затем выводим название типа на экран с помощью simpleName. Когда мы вызываем функцию printType() с типом String или Int, она выводит соответствующий тип на экран.
2. reified вместе с is для проверки типа аргумента во время выполнения
Здесь мы определяем функцию isOfType(), которая принимает значение типа Any и возвращает true, если оно является типом T. Мы используем reified, чтобы получить доступ к типу T во время выполнения. Затем мы используем оператор is для проверки типа значения и возвращаем соответствующее boolean значение.
3. Получить список элементов перечисления
Определяем функцию printEnumValues(), которая выводит список элементов перечисления типа T. Мы применяем reified, чтобы получить доступ к типу T во время выполнения. Затем используем enumValues<T>(), чтобы получить список всех значений перечисления типа T. Внутри цикла выводим каждое значение на экран. Когда мы вызываем функцию printEnumValues() с типом Color, она выводит "RED", "GREEN" и "BLUE" в консоль.
reified — это ключевое слово, которое может быть использовано только в inline-функциях. reified позволяет получить информацию о типе generic-параметра во время выполнения программы. В обычном случае, информация о типах стирается и недоступна во время выполнения, но с помощью reified можно сохранять эту информацию и использовать в других частях приложения.
Несколько простых примеров применения:
1. Получить доступ к типу параметра во время выполнения
fun main() {
printType<String>() // String
printType<Int>() // Int
}
private inline fun <reified T> printType() {
println(T::class.simpleName)
}
В этом примере мы определяем функцию printType() с типовым параметром T, который мы указываем с помощью reified. Внутри функции мы можем получить тип T во время выполнения, используя T::class. Затем выводим название типа на экран с помощью simpleName. Когда мы вызываем функцию printType() с типом String или Int, она выводит соответствующий тип на экран.
2. reified вместе с is для проверки типа аргумента во время выполнения
fun main() {
println(isOfType<Int>(1)) // true
println(isOfType<Int>("Hello")) // false
}
private inline fun <reified T> isOfType(value: Any): Boolean {
return value is T
}
Здесь мы определяем функцию isOfType(), которая принимает значение типа Any и возвращает true, если оно является типом T. Мы используем reified, чтобы получить доступ к типу T во время выполнения. Затем мы используем оператор is для проверки типа значения и возвращаем соответствующее boolean значение.
3. Получить список элементов перечисления
enum class Color { RED, GREEN, BLUE }
fun main() {
printEnumValues<Color>() // RED, GREEN, BLUE
}
private inline fun <reified T : Enum<T>> printEnumValues() {
enumValues<T>().forEach { value ->
println(value)
}
}
Определяем функцию printEnumValues(), которая выводит список элементов перечисления типа T. Мы применяем reified, чтобы получить доступ к типу T во время выполнения. Затем используем enumValues<T>(), чтобы получить список всех значений перечисления типа T. Внутри цикла выводим каждое значение на экран. Когда мы вызываем функцию printEnumValues() с типом Color, она выводит "RED", "GREEN" и "BLUE" в консоль.
This media is not supported in your browser
VIEW IN TELEGRAM
Изучите применение ChatGPT в рабочих целях, чтобы получить от этого прибыль. Сейчас самое время начать использовать искусственный интеллект.
Здесь вы узнаете, почему стоит освоить ChatGPT. Это поможет вам:
- Использовать ChatGPT в вашей профессиональной сфере.
- Предлагать компаниям разработку индивидуально дообученного ChatGPT по заказу.
- Увеличить свой доход, освоив навык создания индивидуально дообученного ChatGPT.
Зарегистрируйтесь на бесплатный вебинар, чтобы узнать больше деталей.
Реклама. ООО "ТЕРРА ЭЙАЙ". ИНН 9728019395. erid: LjN8JwzAY
Здесь вы узнаете, почему стоит освоить ChatGPT. Это поможет вам:
- Использовать ChatGPT в вашей профессиональной сфере.
- Предлагать компаниям разработку индивидуально дообученного ChatGPT по заказу.
- Увеличить свой доход, освоив навык создания индивидуально дообученного ChatGPT.
Зарегистрируйтесь на бесплатный вебинар, чтобы узнать больше деталей.
Реклама. ООО "ТЕРРА ЭЙАЙ". ИНН 9728019395. erid: LjN8JwzAY
—
implementation 'io.github.oshai:kotlin-logging-jvm:5.1.0'
kotlin-logging предоставляет обертку для slf4j-api для использования классами Kotlin; при этом kotlin-logging имеет такие преимущества:
— нет необходимости писать шаблонный код, содержащий имя логгера и класса или имя логгера
— простой способ регистрации сообщений в виде строки с ленивой оценкой с помощью лямбда-выражения
{}
— все предыдущие реализации slf4j по-прежнему могут быть использованы
@KotlinSenior
Please open Telegram to view this post
VIEW IN TELEGRAM
🛠 Опыт внедрения Kotlin и Compose Multiplatform в продакшн-решение
Если вы хотите сократить количество платформенного кода и ресурсы на разработку и поддержку приложения, не спешите этого делать. Леонид Емельянов делится опытом перехода на Kotlin и Compose Multimplatform.
Рассказывает, почему они выбрали именно эти решения, как переходили на новый технологический стек, являясь частью более крупного Android-приложения, и что из всего этого вышло.
Видео по ссылке📺
@KotlinSenior #kotlin
Если вы хотите сократить количество платформенного кода и ресурсы на разработку и поддержку приложения, не спешите этого делать. Леонид Емельянов делится опытом перехода на Kotlin и Compose Multimplatform.
Рассказывает, почему они выбрали именно эти решения, как переходили на новый технологический стек, являясь частью более крупного Android-приложения, и что из всего этого вышло.
Видео по ссылке
@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
Возможности языка Kotlin в версии 2.0
Обзор улучшений и дополнений в Kotlin 2.0, включая новый движок потока управления и промежуточное представление интерфейса, а также то, как это помогает обеспечить согласованность языка.
Также долгосрочное видение Kotlin, уделив особое внимание тому, как новые языковые функции, такие как параметры контекста, управление сигнатурами и неизменяемость, будут поддерживать современные тенденции разработки программного обеспечения и вызовы, с которыми мы сталкиваемся сегодня в нашей экосистеме.
@KotlinSenior #kotlin
Обзор улучшений и дополнений в Kotlin 2.0, включая новый движок потока управления и промежуточное представление интерфейса, а также то, как это помогает обеспечить согласованность языка.
Также долгосрочное видение Kotlin, уделив особое внимание тому, как новые языковые функции, такие как параметры контекста, управление сигнатурами и неизменяемость, будут поддерживать современные тенденции разработки программного обеспечения и вызовы, с которыми мы сталкиваемся сегодня в нашей экосистеме.
@KotlinSenior #kotlin
YouTube
Kotlin Language Features in 2.0 and Beyond - Michail Zarečenskij
Recording brought to you by American Express. https://americanexpress.io/kotlin-jobs
This talk will provide an overview of the enhancements and additions in Kotlin 2.0, including the new control flow engine and frontend intermediate representation and how…
This talk will provide an overview of the enhancements and additions in Kotlin 2.0, including the new control flow engine and frontend intermediate representation and how…
Хотели бы изучить потенциал Flutter для разработки высокопроизводительных веб-приложений и игр?
Ждём вас на открытом практическом уроке от OTUS, где мы:
▫️рассмотрим новые возможности Flutter 3.22 для запуска с веб;
▫️сделаем небольшую игру для браузера, которая будет дополнительно использовать внешние C++ библиотеки с компиляцией через emscripten;
▫️научимся использовать кастомные шейдеры для графики в веб-приложении и возможности 3D-графики через WebGL (wasm);
▫️разберем не менее важные смежные темы и ответим на все возникающие вопросы.
Спикер Дмитрий Золотов — Flutter+Kotlin Developer в Yandex, опытный ментор и преподаватель.
📝 Встречаемся 3 июля в 20:00 мск в преддверии старта курса «Flutter Mobile Developer». Все участники вебинара получат специальную цену на обучение!
➡️ Пройдите короткий тест прямо сейчас, чтобы посетить бесплатный урок: https://vk.cc/cy4SfD
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Ждём вас на открытом практическом уроке от OTUS, где мы:
▫️рассмотрим новые возможности Flutter 3.22 для запуска с веб;
▫️сделаем небольшую игру для браузера, которая будет дополнительно использовать внешние C++ библиотеки с компиляцией через emscripten;
▫️научимся использовать кастомные шейдеры для графики в веб-приложении и возможности 3D-графики через WebGL (wasm);
▫️разберем не менее важные смежные темы и ответим на все возникающие вопросы.
Спикер Дмитрий Золотов — Flutter+Kotlin Developer в Yandex, опытный ментор и преподаватель.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
—
pip install lets-plot
Графики, созданные с помощью lets-plot можно встраивать в JVM (Swing, JavaFX) и Kotlin/JS-приложения.
@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM