#Kotlin
Вышел Kotlin 1.3.40
Новинки минорного обновления языка:
👉 Новая система type inference развивается. В будущем она заменит текущую, но уже сейчас ее можно попробовать в IDE
👉 Новые функции для кодирования/декодирования строк в UTF-8
👉 Добавлена поддержка сторонних nullability аннотаций. Только в IDE 😞
👉 Появилась возможность получения
👉Оптимизированы
👉 Улучшения в Multiplatform Project
👉 Улучшения в Kotlin/JS
👉 Улучшения в Kotlin/Native
👉 Исправление багов
Вышел Kotlin 1.3.40
Новинки минорного обновления языка:
👉 Новая система type inference развивается. В будущем она заменит текущую, но уже сейчас ее можно попробовать в IDE
👉 Новые функции для кодирования/декодирования строк в UTF-8
👉 Добавлена поддержка сторонних nullability аннотаций. Только в IDE 😞
👉 Появилась возможность получения
reified типа с помощью рефлексии на JVM. Используйте функцию typeOf()👉Оптимизированы
trimIndent() и trimMargin(). Теперь для строковых констант они выполняются во время компиляции, а не во время выполнения кода.👉 Улучшения в Multiplatform Project
👉 Улучшения в Kotlin/JS
👉 Улучшения в Kotlin/Native
👉 Исправление багов
The JetBrains Blog
Kotlin 1.3.40 released | The Kotlin Blog
We’re happy to present the new release today, Kotlin 1.3.40. In addition to the quality and tooling improvements the main focus for this version has been on: Gradle support for NPM, Yarn, and Webpa
#Room #ORM #AcrhitectureComponents
Migrating to Room in the real world — Part 1
Новые технологии появляются постоянно: Kotlin приходит на смену Java, корутины заменяют Rx, Architecture Components активнее используются для построения архитектуры приложения. Каково быть если ваш проект имеет большое количество legacy кода и вы уже работаете со старыми технологиями, но хотите мигрировать?
Ребята из Blinkist делятся своим опытом миграции с работы с SQLite на основе ContentValues и простой обертки Cupboard на Room.
Migrating to Room in the real world — Part 1
Новые технологии появляются постоянно: Kotlin приходит на смену Java, корутины заменяют Rx, Architecture Components активнее используются для построения архитектуры приложения. Каково быть если ваш проект имеет большое количество legacy кода и вы уже работаете со старыми технологиями, но хотите мигрировать?
Ребята из Blinkist делятся своим опытом миграции с работы с SQLite на основе ContentValues и простой обертки Cupboard на Room.
Medium
Migrating to Room in the real world — Part 1
Analysis and planning.
#Kotlin
[Kotlin pearls 6] Extensions: The Good, The Bad and The Ugly
Kotlin
В статье происходит разбор этой функции языка, как она работает под капотом и случаи когда ее стоит использовать, а когда нет.
[Kotlin pearls 6] Extensions: The Good, The Bad and The Ugly
Kotlin
extension function и property - это визитная карточка Kotlin для Java разработчиков. Разве что null safety может сравниться по популярности.В статье происходит разбор этой функции языка, как она работает под капотом и случаи когда ее стоит использовать, а когда нет.
Medium
[Kotlin Pearls 6] Extensions: The Good, The Bad and The Ugly
How to use Extension Functions and Properties to improve the readability of your code
#RecyclerView #Performance
Smooth RecyclerView Scrolling in Android
Отображение списков - довольно популярная задача в современных мобильных приложениях. Требование к таким виджетам высоки - они должны обеспечивать быструю скорость работы и плавность отрисовки при работе пользователя с ними.
Как этого добиваться в
👉 Осуществляйте inflate view для ViewHolder в отдельном потоке при помощи AsyncLayoutInflater и создавайте пул из них
👉 Создайте очередь из UI операций для оптимизации выполнения
👉 Используйте PrecomputedTextCompat, чтобы вынести расчеты для отображения текста на фоновый поток
Smooth RecyclerView Scrolling in Android
Отображение списков - довольно популярная задача в современных мобильных приложениях. Требование к таким виджетам высоки - они должны обеспечивать быструю скорость работы и плавность отрисовки при работе пользователя с ними.
Как этого добиваться в
RecyclerView? Используйте следующие советы хардкор уровня:👉 Осуществляйте inflate view для ViewHolder в отдельном потоке при помощи AsyncLayoutInflater и создавайте пул из них
👉 Создайте очередь из UI операций для оптимизации выполнения
onBindViewHolder()👉 Используйте PrecomputedTextCompat, чтобы вынести расчеты для отображения текста на фоновый поток
Medium
Smooth RecyclerView Scrolling in Android
Tips for using complex views without skipping frames
#Compatibility
Android API Level, backward and forward compatibility
Подробный разбор вопросов версий Android SDK и как они влияют. В статье рассматривается:
👉 Что такое API и SDK ?
👉 Что значит API Level ?
👉 Как использовать compileSdkVersion, minSdkVersion и targetSdkVersion ?
👉 Как вы можете убедиться, что приложение будет работать нормально на устройствах с различными версиями ОС?
👉 Что такое forward & backward совместимость (compatibility)?
Android API Level, backward and forward compatibility
Подробный разбор вопросов версий Android SDK и как они влияют. В статье рассматривается:
👉 Что такое API и SDK ?
👉 Что значит API Level ?
👉 Как использовать compileSdkVersion, minSdkVersion и targetSdkVersion ?
👉 Как вы можете убедиться, что приложение будет работать нормально на устройствах с различными версиями ОС?
👉 Что такое forward & backward совместимость (compatibility)?
Medium
Android API Level, backward and forward compatibility
If you get to read this article it might mean you are wondering things like:
Forwarded from Mobile People Talks (Александр Денисов)
Асинхронность - знаешь что об этом ты? Part I
Первоначальной идеей этого выпуска было обсуждение асиннхронности, подходов и решений со всех, так сказать, четырех сторон. Сначала обсудить нативные темы, а потом обсудить кроссплатформенные решения. И начиналось все вроде бы хорошо, обсудили многопоточность, классические проблемы, языки, которые живут без этого, но потом Данис с Кириллом так увлеклись беседой о сходствах и различиях асинхронных подходов в Android и iOS, что на Flutter и React Native просто тупо не хватило времени!
🤪 Так что придется делать два выпуска по цене одного! Асинхронность Flutter vs ReactNative ждите в следующем!
🎧 SoundCloud
🎧 Apple Podcasts
Первоначальной идеей этого выпуска было обсуждение асиннхронности, подходов и решений со всех, так сказать, четырех сторон. Сначала обсудить нативные темы, а потом обсудить кроссплатформенные решения. И начиналось все вроде бы хорошо, обсудили многопоточность, классические проблемы, языки, которые живут без этого, но потом Данис с Кириллом так увлеклись беседой о сходствах и различиях асинхронных подходов в Android и iOS, что на Flutter и React Native просто тупо не хватило времени!
🤪 Так что придется делать два выпуска по цене одного! Асинхронность Flutter vs ReactNative ждите в следующем!
🎧 SoundCloud
🎧 Apple Podcasts
SoundCloud
знаешь что об этом ты?
Первоначальной идеей выпуска было обсуждение асиннхронности, подходов и решений со всех, так сказать, четырех сторон. Сначала обсудить нативные темы, а потом обсудить кроссплатформенные решения. И нач
#Meetup #MobilePeople #Minsk
27 июня состоится митап сообщества Mobile People. В рамках митапа вас ждут 2 доклада:
👉 Android: Under the Hood
Что общего между вашим мобильным телефоном и модемом Промсвязь? Что происходит при вызове startActivity(Intent)? Кто считает секунды до ANR? В своем докладе Дмитрий даст ответы на эти вопросы и раскроет детали работы Android О
👉 Kotlin Multiplatform – швейцарский нож мобильного разработчика
Kotlin Multiplatform – новый инструмент для решения разработки одного приложения для разных платформ. Хотите узнать как можно уже сейчас начать использовать Kotlin и Clean Architecture для разработки приложение под Android и iOS, какие есть ограничения и достоинства подхода? Алексей вам расскажет об этом на основе реального опыта разработки продакшен приложения.
Участие бесплатное по предварительной регистрации
Когда: 19.00, 27 июня 2019 (четверг)
Где: EPAM, ул. Академика Купреевича 3В, Loft
27 июня состоится митап сообщества Mobile People. В рамках митапа вас ждут 2 доклада:
👉 Android: Under the Hood
Что общего между вашим мобильным телефоном и модемом Промсвязь? Что происходит при вызове startActivity(Intent)? Кто считает секунды до ANR? В своем докладе Дмитрий даст ответы на эти вопросы и раскроет детали работы Android О
👉 Kotlin Multiplatform – швейцарский нож мобильного разработчика
Kotlin Multiplatform – новый инструмент для решения разработки одного приложения для разных платформ. Хотите узнать как можно уже сейчас начать использовать Kotlin и Clean Architecture для разработки приложение под Android и iOS, какие есть ограничения и достоинства подхода? Алексей вам расскажет об этом на основе реального опыта разработки продакшен приложения.
Участие бесплатное по предварительной регистрации
Когда: 19.00, 27 июня 2019 (четверг)
Где: EPAM, ул. Академика Купреевича 3В, Loft
EPAM Campus
Industry-focused free IT courses for beginners | EPAM Campus
✅ The international IT company EPAM offers training programs in 30+ different IT directions for beginners around the globe. 🎯 Jumpstart your career in tech with EPAM!
Mobile People Minsk Android June Meetup.ics
1.2 KB
Не забудь добавить в календарь
#Новости
Сделал новый сваг для канала. Принцип чтобы его получить прост - находите меня и говорите: "Хочу сваг Android Broadcast"
Сделал новый сваг для канала. Принцип чтобы его получить прост - находите меня и говорите: "Хочу сваг Android Broadcast"
#MotionLayout #Animation
MotionLayout + ShapeOfView = 😍
MotionLayout и UI редактор в
Например, в статье вы можете найти как можно делать красивые анимации с
MotionLayout + ShapeOfView = 😍
MotionLayout и UI редактор в
Android Studio - это большой шаг для предоставления удобного инструмента, который позволит создавать красивые анимации для приложений. Пока этого не произошло 😞 (осталось ждать совсем чуть-чуть), мы можем посмотреть, что можно cделать уже сейчас.Например, в статье вы можете найти как можно делать красивые анимации с
Nested Scroll и ShapeOfView, в MotionLayout.Medium
MotionLayout + ShapeOfView = 😍
By using MotionLayout you can give a totally different and fluid style to your application. Forget static screens without any animation…
This media is not supported in your browser
VIEW IN TELEGRAM
Пример работы библиотеки
#Lint #CodeQuality #Google
🎥 Static Analysis with Android Lint by Tom Norbye
Продолжительность: 40:27
Android Lint - это статический анализатор кода, широко используемый в Android разработке для поиска ошибок в Java и Kotlin коде. Также он способен находить множество ошибок различных ошибок при написании Android приложений.
Tom Norbye из Google - создатель этого инструмента и Lead Android Studio, в своем докладе рассказывает о:
👉 основы Android Lint
👉 архитектура
👉 как написать собственное правило
🎥 Static Analysis with Android Lint by Tom Norbye
Продолжительность: 40:27
Android Lint - это статический анализатор кода, широко используемый в Android разработке для поиска ошибок в Java и Kotlin коде. Также он способен находить множество ошибок различных ошибок при написании Android приложений.
Tom Norbye из Google - создатель этого инструмента и Lead Android Studio, в своем докладе рассказывает о:
👉 основы Android Lint
👉 архитектура
👉 как написать собственное правило
SlidesLive
Tor Norbye · Static Analysis with Android Lint
Android Lint is a static analysis tool used by Android developers to find common and not so common bugs. It's not limited to Android code; inside Google it is also used for general purpose static...
#Animation #SharedElementTransition
Implement Google Inbox Style Animation on Android
Пользователи очень хорошо относятся к тем приложениям, которые содержат анимации, которые позволяют проще понимать интерфейс и создают "Вау" эффект. Одно из таких приложений - Google Inbox (который был убит).
Автор статьи пытается повторить анимацию открытия письма с экрана списка всех писем. Решение требует множество кастомизаций в стандартных Shared Element Transition, но в итоге результат радует 😁
Implement Google Inbox Style Animation on Android
Пользователи очень хорошо относятся к тем приложениям, которые содержат анимации, которые позволяют проще понимать интерфейс и создают "Вау" эффект. Одно из таких приложений - Google Inbox (который был убит).
Автор статьи пытается повторить анимацию открытия письма с экрана списка всех писем. Решение требует множество кастомизаций в стандартных Shared Element Transition, но в итоге результат радует 😁
Medium
Implement Google Inbox Style Animation on Android
As an Android user and developer, I am always attracted to great apps with nice and meaningful animations. To me such apps not only deliver…
#Library #Hack
Only
Как часто вы сталкивались с тем, что тестировщик нервно жмет на кнопку, какой-то экран у вас открывается несколько раз и вам прилетает баг? Малоприятная ситуация. Приходится идти и рассказывать, что это не баг, а ситуация на которую не распространяется проверка в приложении и в реальном мире таких ситуаций не происходит.
Но бывают случаи, когда менеджер заставлял делать затычку, обычно в виде
Библиотека Only предоставляет простое API, которое позволяет выполнять действия строго не более указанного вами количества раз.
Only
Как часто вы сталкивались с тем, что тестировщик нервно жмет на кнопку, какой-то экран у вас открывается несколько раз и вам прилетает баг? Малоприятная ситуация. Приходится идти и рассказывать, что это не баг, а ситуация на которую не распространяется проверка в приложении и в реальном мире таких ситуаций не происходит.
Но бывают случаи, когда менеджер заставлял делать затычку, обычно в виде
boolean флага, которая будет блокировать выполнение действий множество раз ☹️. Что делать если таких кнопок в вашем приложении много?Библиотека Only предоставляет простое API, которое позволяет выполнять действия строго не более указанного вами количества раз.
#Kotlin #DSL
How do Kotlin DSL libraries work?
Kotlin DSL - это удобный декларативный формат работы с различным API. Множество различных библиотек и фреймворков имеют его поддержку: Gradle, Anko, Koin DI, Spek.
Хотите понять как реализовано Kotlin DSL в различных библиотеках и использовать его у себя в приложение? Читайте больше подробностей в статье
How do Kotlin DSL libraries work?
Kotlin DSL - это удобный декларативный формат работы с различным API. Множество различных библиотек и фреймворков имеют его поддержку: Gradle, Anko, Koin DI, Spek.
Хотите понять как реализовано Kotlin DSL в различных библиотеках и использовать его у себя в приложение? Читайте больше подробностей в статье
Brunoaybar
How do Kotlin DSL libraries work?
Many new and shiny Kotlin libraries implement their own DSLs. Learn how they work and how can you implement your own.
Темная тема - это тренд. Особенно с приходом Android Q. Как у ваших приложений обстоят дела с поддержкой этой функции?
Final Results
16%
Уже реализовано
26%
Планируем адатировать в ближайшее время
12%
Надеемся на инвертирование цветов
46%
Не планируем поддержки