Мобильная разработка в апреле: дайджест новостей от RuStore

5773c961c7a0f15715c76b4d6b3e673f.png

Разработка

Релиз Python 3.12.0a7

Python 3.12 до сих пор находится в разработке, но текущий релиз 3.12.0a7 станет последним в альфа-версии.

Изменения в релизе включают удаление некоторых устаревших компонентов и улучшенные сообщения об ошибках. Например, удалены устаревшие модули smtpd и distutils, добавлена поддержка perf.

Разработчик предупреждает, что это предварительная версия, и её не рекомендуется использовать в производственных средах.

Новая архитектура React Native

Разработчики проделали большую работу по улучшению производительность. За 4 года был проведён полный рефакторинг архитектуры, что позволило избавиться от устаревших методов и пересмотреть ряд концепций работы React Native.

В практику был внедрён Javascript Interface — новый интерфейс, который позволяет объекту JavaScript содержать ссылку на C++ и наоборот. Например, объект C++ теперь может запрашивать у объекта JavaScript выполнение метода в мире JavaScript и наоборот.

Появился Codegen — дополнительный инструмент для автоматизации генерации кода для повышения безопасности типов и качества кода. А также Fabric — новая система параллельного рендеринга. Внедрённые Turbo Modules повышают производительность за счёт загрузки модулей только тогда, когда они действительно необходимы.

Опробовать новые механики можно на React Native 0.72. Но не забудьте предварительно изучить документацию.

Kotlin DSL теперь используется по умолчанию для новых сборок Gradle

JetBrains достигают очередного успеха, договорившись об использовании Kotlin DSL по умолчанию для новых сборок Gradle. По сути, Google отказывается от безусловной поддержки Groovy.

Чем же так хорошо Kotlin DSL? Kotlin — статически типизированный язык, а значит, ошибки скрипта сборки могут возникать во время компиляции, а не во время выполнения. Для разработчиков больше не будет неприятных сюрпризов.

Лучшее взаимодействие с IDE: IntelliJ IDEA и Android Studio поддерживают автозаполнение, рефакторинг и улучшенный поиск по коду. А также разработчикам может понравиться упрощённый синтаксис подключения плагина.

Фреймворки и IDE

Android Studio Giraffe уже в Beta, а Flamingo — в stable

Google продолжает развитие Android Studio и скоро разработчикам станет доступа стабильная сборка Giraffe, которая придёт на смену Flamingo.

В этот раз корпорация выводить продукт в статус beta и предлагает разработчикам протестировать его на боевых проектах. В новом релизе Giraffe также исправлены ряд ранее найденных проблем:

  • появились сообщения в окне вывода сборки при проблемах синхронизации;

  • исправлены ошибки при вызове DexingNoClasspathTransform, DslExtension.Builder.extendProjectWith (), AndroidLintAnalysisTask (: lintAnalyzeExternalRelease);

  • исправлено большое потребление памяти при использовании MessageBacklog. В некоторых случаях утечка памяти превышала значение 1,4 ГБ.

Стабильный релиз Flamingo включает в себя новые функции для тестирования мобильных приложений, создания пользовательских интерфейсов с помощью Live Edit и обновление IntelliJ. Разработчики могут обновиться из самой IDE или скачать новую версию на официальном сайте.

Новая версия Android Jetpack

И ещё один релиз от Google — Android Jetpack с множеством компонентов. Он позволяет создавать нативные пользовательские интерфейсы и существенно ускоряет разработку.

Новый релиз принёс:

  • Compose 1.4.2;

  • CameraX 1.3.0-alpha06: поддержка работы с несколькими камерами одновременно и ResolutionSelector API для настройки разрешения, соотношения сторон, зеркального отображения и других параметров съемки;

  • Graphics Shape — библиотека для рисования геометрических фигур и трансформации между ними;

  • возвращение поддержки Java 11 в Compose Compiler 1.4.6;

  • устранение ошибки в работе разных библиотек: Activity, Fragment, Media3.

Обновление интерфейса PyCharm 2023.1

JetBrains зарелизили новый интерфейс PyCharm, переработав заголовок окна и виджеты, уменьшив размеры панели окон и создав единую панель для откладки. Появился компактный режим, который IDE сужает панели инструментов и заголовки окон, сокращает отступы и интервалы, а также уменьшает кнопки и значки.

Изменена работа редактора:

  • улучшена обработка иерархий дженерик-классов и дженерик-протоколов;

  • внедрено удобное управление зависимостями для нескольких проектов;

  • новые встроенные подсказки для имплементаций;

  • улучшена подсветка синтаксиса в Quick Documentation.

А ещё наконец-то появилась долгожданная поддержка Astro. Правда, пока через специальный плагин.

Android

Публичная бета-версия Android 14

Google выпустила первую публичную бета-версию Android 14, которую можно установить на смартфоны Pixel,  начиная с Pixel 4a 5G. Как обычно, она предназначена в основном для разработчиков приложений.

В публичной сборке появилась новая стрелка назад, которая подстраивается под тему интерфейса или обои, и возможность кастомизировать действия в системной таблице шаринга. Кроме того, появились языковые настройки для каждого приложения и новые настройки конфиденциальности.

В целом в этой бета-версии не так много нового. Скорее всего, больше информации будет представлено на конференции Google I/O, которая состоится 10 мая.

Тренды

ИИ-помощник для разработчиков CodeWhisperer

Amazon сделала бесплатным ИИ-помощника для программистов CodeWhisperer. Он может использоваться в интегрированных средах разработки для создания строк кода на основе текстовых запросов.

CodeWhisperer может автоматически фильтровать потенциально предвзятые предложения кода и предлагать варианты их исправления. Дополнительно он ищет в коде потенциальные уязвимости и советует механизмы по их исправлению.

GitHub запускает сообщество для мейнтейнеров

GitHub запускает закрытое сообщество для авторов проектов с открытым исходным кодом. Оно предоставляет доступ к новым программам, мероприятиям, бета-версиям и лучшим практикам открытого кода.

Первый семинар был посвящён заботе о благополучии разработчиков и защите от выгорания. Реакция в сообществе была смешанной, но многие раскритиковали идею сообщества.

© Habrahabr.ru