Как новый компилятор K2 ускоряет компиляцию Kotlin на 94%
Статья освещает нюансы работы компилятора, которые будут полезны разработчикам для понимания того, что же JB улучшают под капотом, и как это работает.
Контент статьи основывается на выступлении и овервью, но с добавлением дополнительной информации.
👉 Как работает компилятор
👉 Frontend (реализация K1/K2, как работает K1/K2, сравнение результатов K1 и K2)
👉 Backend (IR, IR lowering, Target code)
👉 Выводы
👉 Дополнительные материалы
Читать (Ru)
Статья освещает нюансы работы компилятора, которые будут полезны разработчикам для понимания того, что же JB улучшают под капотом, и как это работает.
Контент статьи основывается на выступлении и овервью, но с добавлением дополнительной информации.
👉 Как работает компилятор
👉 Frontend (реализация K1/K2, как работает K1/K2, сравнение результатов K1 и K2)
👉 Backend (IR, IR lowering, Target code)
👉 Выводы
👉 Дополнительные материалы
Читать (Ru)
🔥13❤5👍5
Room для Kotlin Multiplatform. Пробуем нативное решение
Анна Жаркова на примере простого Todo приложения, написанного на KMP с использованием Compose Multiplatform затестила мультиплатформенный Room. Подробности в статье.
Читать (Ru)
Анна Жаркова на примере простого Todo приложения, написанного на KMP с использованием Compose Multiplatform затестила мультиплатформенный Room. Подробности в статье.
Читать (Ru)
👍13🔥4👎2❤1🐳1🫡1
Forwarded from Swift Tips
Apple близка к соглашению с OpenAI по интеграции ChatGPT на iPhone
Bloomberg сообщает, что Apple заключила соглашение с OpenAI об интеграции ChatGPT в iOS 18.
Официальных комментариев пока что не было, по слухам – анонс можно ожидать на WWDC, которая пройдет в июне.
Читать (En)
Bloomberg сообщает, что Apple заключила соглашение с OpenAI об интеграции ChatGPT в iOS 18.
Официальных комментариев пока что не было, по слухам – анонс можно ожидать на WWDC, которая пройдет в июне.
Читать (En)
👍5🔥5🤔3
This media is not supported in your browser
VIEW IN TELEGRAM
Как мы реализовали кнопку со свайпом на Jetpack Compose
Интересная статья о том, как реализовать кнопку со свайпом на Jetpack Compose с помощью кастомного Layout, как всё это дело оптимизировать и минимизировать количество рекомпозиций.
Исходный код на GitHub → SwipeButton
Читать (Ru)
Интересная статья о том, как реализовать кнопку со свайпом на Jetpack Compose с помощью кастомного Layout, как всё это дело оптимизировать и минимизировать количество рекомпозиций.
Исходный код на GitHub → SwipeButton
Читать (Ru)
🔥21👍10❤1👎1
Kotlin Coroutines 101: Async Programming in Practice
Подробная статья по основным концепциям корутин, с практическими примерами кода к каждому блоку.
👉 Understanding Coroutines: A Primer
👉 Kotlin Coroutines Components
👉 Delving into CoroutineContext: Understanding the Core
👉 Unveiling the CoroutineScope: Your Gateway to Control
👉 Coroutine-builders: Creating Coroutines
👉 Launching Coroutines: Real-world Applications
👉 Wrapping up
Читать (En)
Подробная статья по основным концепциям корутин, с практическими примерами кода к каждому блоку.
👉 Understanding Coroutines: A Primer
👉 Kotlin Coroutines Components
👉 Delving into CoroutineContext: Understanding the Core
👉 Unveiling the CoroutineScope: Your Gateway to Control
👉 Coroutine-builders: Creating Coroutines
👉 Launching Coroutines: Real-world Applications
👉 Wrapping up
Читать (En)
🔥6❤5👍3
Developer Keynote Google I/O 2024: официальная поддержка KMP, развитие Gemini и AI в Андроиде
Статья с обзором того, что было на Developer Keynote (Google I/O '24).
👉 Gemini API & Google AI studio
👉 Как AI помогает в Android
👉 Developer productivity
👉 KMP
👉 Compose
👉 Shared element transitions
👉 Адаптивный UI
👉 Виджеты
👉 Тестирование
👉 Как Compose ускоряет создание превосходного UX на разных устройствах (Soundcloud)
👉 Дополнительные улучшения Compose
👉 Как AI может повысить вашу производительность
👉 Project IDX
👉 Checks
👉 Обновления в Firebase
Читать (Ru)
Статья с обзором того, что было на Developer Keynote (Google I/O '24).
👉 Gemini API & Google AI studio
👉 Как AI помогает в Android
👉 Developer productivity
👉 KMP
👉 Compose
👉 Shared element transitions
👉 Адаптивный UI
👉 Виджеты
👉 Тестирование
👉 Как Compose ускоряет создание превосходного UX на разных устройствах (Soundcloud)
👉 Дополнительные улучшения Compose
👉 Как AI может повысить вашу производительность
👉 Project IDX
👉 Checks
👉 Обновления в Firebase
Читать (Ru)
🔥10👍5❤2👨💻1
Как мы отслеживаем просадки FPS в Альфа-Мобайл?
Полезная статья, в которой разработчик из Альфа-Мобайл делится опытом внедрения механизмов мониторинга производительности в продукты компании.
👉 Зачем тратить время на перформанс?
👉 Быстрое отступление или как понять, что экран действительно лагает?
👉 Choreographer
👉 Открытие Activity может вызывать просадку FPS и это нормально
👉 TODO или что мы сделали не так?
Читать (Ru)
Полезная статья, в которой разработчик из Альфа-Мобайл делится опытом внедрения механизмов мониторинга производительности в продукты компании.
👉 Зачем тратить время на перформанс?
👉 Быстрое отступление или как понять, что экран действительно лагает?
👉 Choreographer
👉 Открытие Activity может вызывать просадку FPS и это нормально
👉 TODO или что мы сделали не так?
Читать (Ru)
🔥8👍3❤2
Генеративный ИИ в Android и эффективность фоновой работы приложения — важное с Google I/O 2024
Вторая статья от ребят из KTS, c обзором доклада про интеграцию передового генеративного ИИ в Android-приложения, который предлагает идеальные ответы или даже делает сводку по вашей аудио записи.
👉 Генеративный ИИ на Android под капотом
👉 Почему выбранный трек интересен?
👉 Преимущества выполнения на устройстве
👉 Техническое погружение в AICore
👉 Тонкая настройка
👉 Повышение эффективности фоновой работы от аккумулятора на Android
Читать (Ru)
Вторая статья от ребят из KTS, c обзором доклада про интеграцию передового генеративного ИИ в Android-приложения, который предлагает идеальные ответы или даже делает сводку по вашей аудио записи.
👉 Генеративный ИИ на Android под капотом
👉 Почему выбранный трек интересен?
👉 Преимущества выполнения на устройстве
👉 Техническое погружение в AICore
👉 Тонкая настройка
👉 Повышение эффективности фоновой работы от аккумулятора на Android
Читать (Ru)
👍12🔥7👨💻4❤2
Утечки памяти в мобильных приложениях: руководство для QA-инженеров
Толковое руководство для QA про то, как приложение работает с оперативной памятью, что такое утечки памяти и когда они возникают, как утечки влияют на стабильность работы приложения и как их находить.
В первую очередь статья будет полезна тем, кто только начинает изучать, что происходит со стабильностью мобильного приложения.
Читать (Ru)
Толковое руководство для QA про то, как приложение работает с оперативной памятью, что такое утечки памяти и когда они возникают, как утечки влияют на стабильность работы приложения и как их находить.
В первую очередь статья будет полезна тем, кто только начинает изучать, что происходит со стабильностью мобильного приложения.
Читать (Ru)
👍4🔥2❤1
Forwarded from Swift Tips
Слежка через пуш-уведомления на смартфонах
Недавно стало известно о новом виде слежки за пользователями смартфонов: через пуш-уведомления в iOS и Android. Газета Washington Post написала, в частности, что эту тактику начало использовать ФБР (кэш статьи).
Как работает такой метод выслеживания читайте в статье.
Читать (Ru)
Недавно стало известно о новом виде слежки за пользователями смартфонов: через пуш-уведомления в iOS и Android. Газета Washington Post написала, в частности, что эту тактику начало использовать ФБР (кэш статьи).
Как работает такой метод выслеживания читайте в статье.
Читать (Ru)
🤔7👀4👍3
Мое решение 3-х проблем MVx
Продолжение с решениями 3-х проблем MVx вот этой статьи.
👉 Проблема остатка (Remainder issue)
👉 Проблема масштабирования (Scalability issue)
👉 Проблема разрывов (Gaps issue)
Читать (Ru)
Продолжение с решениями 3-х проблем MVx вот этой статьи.
👉 Проблема остатка (Remainder issue)
👉 Проблема масштабирования (Scalability issue)
👉 Проблема разрывов (Gaps issue)
Читать (Ru)
👍11🔥5👎2👨💻2
What’s new in Jetpack Compose at I/O ‘24
Пост-обзор всех изменений в Jetpack Compose, представленных на Google I/O 2024.
👉 Shared element transitions
👉 Lazy list item animations
👉 Performance improvements
👉 Type safe navigation in Navigation Compose
👉 CameraX Compose
Читать (En)
Пост-обзор всех изменений в Jetpack Compose, представленных на Google I/O 2024.
👉 Shared element transitions
👉 Lazy list item animations
👉 Performance improvements
👉 Type safe navigation in Navigation Compose
👉 CameraX Compose
Читать (En)
🔥9❤3👍3🫡1
Navigation Compose meet Type Safety
Начиная с версии Navigation 2.8.0-alpha08 Гугловцы запилили типобезопасную навигацию на основе Kotlin Serialization.
Из глобального – поменялся способ формирования графа в Navigation Compose и передачи параметров. Теперь вместо строки route, нужно будет использовать класс.
Читать (En)
Начиная с версии Navigation 2.8.0-alpha08 Гугловцы запилили типобезопасную навигацию на основе Kotlin Serialization.
Из глобального – поменялся способ формирования графа в Navigation Compose и передачи параметров. Теперь вместо строки route, нужно будет использовать класс.
Читать (En)
🔥13👍4❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Shared Element Transitions in Compose
Официальный гайд от Гугла по реализации Shared Element Transitions в Compose.
Читать (En)
Официальный гайд от Гугла по реализации Shared Element Transitions в Compose.
Читать (En)
🔥17👍6❤3👎2
Caching Strategies in Android
Статья с разбором различных стратегий и вариантов кеширования и примером реализации.
👉 Cache Only
👉 Network Only
👉 Network First
👉 Cache First - Network Second
👉 Cache First - Network for Later
👉 Cache First - Network Once
Читать (En)
Статья с разбором различных стратегий и вариантов кеширования и примером реализации.
👉 Cache Only
👉 Network Only
👉 Network First
👉 Cache First - Network Second
👉 Cache First - Network for Later
👉 Cache First - Network Once
Читать (En)
👍17❤3🔥3👀2
DPE University - New Gradle Build Tool Courses
Тут Gradle запустили целый, отдельный портал DPE University – платформа с бесплатными курсами для самоизучения. Уже там доступны первые 10 курсов по Gradle Build Tool, Apache Maven и Develocity Build Scan.
Gradle Build Tool Сourses👇
👉 Introduction to Gradle Build Tool for Developers
👉 How to Use Gradle Build Scan
👉 Incremental Builds and Build Caching with Gradle Build Tool
👉 Incremental Builds and Build Caching with Gradle and Develocity
👉 Gradle Build Cache Deep Dive
👉 Maintaining Optimal Gradle Build Cache Performance
Читать (En)
Тут Gradle запустили целый, отдельный портал DPE University – платформа с бесплатными курсами для самоизучения. Уже там доступны первые 10 курсов по Gradle Build Tool, Apache Maven и Develocity Build Scan.
Gradle Build Tool Сourses👇
👉 Introduction to Gradle Build Tool for Developers
👉 How to Use Gradle Build Scan
👉 Incremental Builds and Build Caching with Gradle Build Tool
👉 Incremental Builds and Build Caching with Gradle and Develocity
👉 Gradle Build Cache Deep Dive
👉 Maintaining Optimal Gradle Build Cache Performance
Читать (En)
🔥13👍5❤1
7 Android Studio Usage Tips
Несколько советов по использованию Android Studio, которые могут повысить производительность разработчиков и упростить разработку приложений.
👉 Use Logcat to take screenshots and record the screen
👉 Learn and use keyboard shortcuts
👉 Disable run window switching
👉 Automatically show Logcat on each app run
👉 Use the built-in Git client
👉 Install the ADB Idea plugin
👉 Learn the debugger
Читать (En)
Несколько советов по использованию Android Studio, которые могут повысить производительность разработчиков и упростить разработку приложений.
👉 Use Logcat to take screenshots and record the screen
👉 Learn and use keyboard shortcuts
👉 Disable run window switching
👉 Automatically show Logcat on each app run
👉 Use the built-in Git client
👉 Install the ADB Idea plugin
👉 Learn the debugger
Читать (En)
👍7🔥3👎2❤1
Forwarded from Swift Tips
SwiftUI: наконец-то пора? Опыт разработки на SwiftUI в контексте UIKit приложения
В статье автор делится опытом внедрения большой фичи на SwiftUI в приложение, целиком состоящее из UIKit с минимальной требуемой версией iOS 14.
👉 Выбор в пользу SwiftUI: первые шаги и ожидания от перехода
👉 Заметки новичка: первые трудности работы с SwiftUI
👉 Открытие новых горизонтов: погружение в мир SwiftUI. Поможет ли нам ChatGPT?
👉 Пара слов про архитектуру
👉 Комбинирование SwiftUI и UIKit: преодоление технических преград
👉 Сюрпризы на пути: неожиданные ошибки и способы их решения
👉 Уроки и открытия: полезные находки и применение лучших практик
👉 Интеграция SwiftUI и UIKit: результаты
Читать (Ru)
В статье автор делится опытом внедрения большой фичи на SwiftUI в приложение, целиком состоящее из UIKit с минимальной требуемой версией iOS 14.
👉 Выбор в пользу SwiftUI: первые шаги и ожидания от перехода
👉 Заметки новичка: первые трудности работы с SwiftUI
👉 Открытие новых горизонтов: погружение в мир SwiftUI. Поможет ли нам ChatGPT?
👉 Пара слов про архитектуру
👉 Комбинирование SwiftUI и UIKit: преодоление технических преград
👉 Сюрпризы на пути: неожиданные ошибки и способы их решения
👉 Уроки и открытия: полезные находки и применение лучших практик
👉 Интеграция SwiftUI и UIKit: результаты
Читать (Ru)
👍7🔥3🤔2
Погружение в мир Lint'a в Android-проекте
Статья с разбором того, как устроен Lint, из каких «сущностей» состоит + принцип работы почти любого детектора.
Рассматривается подключение Lint'a в проект и не очень сложные примеры с разбором неочевидных моментов, о которых обычно не пишут в статьях про знакомство с Lint'ом.
👉 Как устроен Lint
👉 Из каких «сущностей» состоит
👉 Подключение в проект
👉 Issue
👉 Detector
👉 AST и PSI
👉 Примеры
Читать (Ru)
Статья с разбором того, как устроен Lint, из каких «сущностей» состоит + принцип работы почти любого детектора.
Рассматривается подключение Lint'a в проект и не очень сложные примеры с разбором неочевидных моментов, о которых обычно не пишут в статьях про знакомство с Lint'ом.
👉 Как устроен Lint
👉 Из каких «сущностей» состоит
👉 Подключение в проект
👉 Issue
👉 Detector
👉 AST и PSI
👉 Примеры
Читать (Ru)
👍11🔥4👨💻1
Kotlin Roundup: KotlinConf 2024 Keynote Highlights
👉 Kotlin language features in 2.0 and beyond
👉 Android support for Kotlin Multiplatform
👉 Compose Multiplatform for iOS goes Beta
👉 Amper Update – Standalone build tool, new IDE features, and more
👉 Uber joins the Kotlin Foundation
👉 The Kotlin Foundation Grants Program continues in 2024
👉 Kotlin adoption in global companies
Читать (En)
👉 Kotlin language features in 2.0 and beyond
👉 Android support for Kotlin Multiplatform
👉 Compose Multiplatform for iOS goes Beta
👉 Amper Update – Standalone build tool, new IDE features, and more
👉 Uber joins the Kotlin Foundation
👉 The Kotlin Foundation Grants Program continues in 2024
👉 Kotlin adoption in global companies
Читать (En)
❤4👍3🔥1