Миграция на Jetpack Compose
Встречайте серию статей, посвящённых искусству миграции: от классического View к современному Jetpack Compose.
Jetpack Compose уже завоевал признание за свою способность упрощать и ускорять процесс разработки.
Он сокращает boilerplate и предоставлять мощные инструменты, не говоря уже о синергии с Kotlin.
#android #jetpackcompose #миграция
Android Studio for Platform
Недавно компания Google анонсировала Android Studio for Platform (ASfP) — версию интегрированной среды разработки (IDE), основанную на Android Open Source Project (AOSP) и использующую систему сборки Soong.
Поддерживаются языки программирования C++, Java и Kotlin; среда работает под управлением Linux. Это выглядит как важный шаг в развитии платформы.
#android #androidstudio #aosp
Поверхностное и глубокое копирование в Kotlin
В этой статье автор подробно объясняет разницу между поверхностным копированием (shallow copy) и глубоким копированием (deep copy) на примерах списков и классов данных.
Несмотря на то, что глубокое копирование создаёт полную копию объекта, оно может быть медленнее и требует больше кода по сравнению с поверхностным копированием.
#android #kotlin #ошибки
Ускоряем поиск по коду в Android Studio
В этой статье мы рассмотрим возможности Android Studio, которые помогут нам быстрее ориентироваться в коде: находить нужные фрагменты и анализировать связи между ними.
Если вы опытный пользователь, то вы, наверное, знаете большинство из перечисленных лайфхаков. Но если вы прочитаете статью до конца, вы узнаете, как ещё быстрее находить нужные файлы, строки кода и зависимости.
#android #androidstudio #оптимизация
Короткий онбординг
Многие полагают, что чем быстрее и проще онбординг, тем лучше пользователь адаптируется к приложению. Однако иногда более длительный и сложный процесс может дать лучший результат.
В этой статье вы узнаете, почему 10-минутный онбординг из 50 экранов может быть более эффективным, чем короткий и быстрый.
#android #ios #пользователи
Шейдеры в iOS для начинающих
В iOS 17 появилось важное обновление — теперь можно добавить шейдер к любой View, что упрощает интеграцию и позволяет использовать больше растровых эффектов.
В статье рассказывается об основах: что такое шейдеры, какой код нужно написать, как его подключить и как изучать тему дальше + приводятся несколько сложных примеров.
#ios #swift
Астрологи объявили неделю iOS-разработчика 🔮
🎃В канун Дня Всех Святых Старшие Арканы развернули инфраструктуру на ваших серверах — выясните, что они предсказывают!
Кажется, что всё уже знакомо — тогда что дальше? Может самое время подумать о техдолге?
Сделайте скриншот экрана — узнайте, какая карта определит вашу судьбу в профессии и какой амулет поможет избежать бед 🧿
Скрин, скрин!
Вышла техническая превью-версия Skip
Skip — технология для создания кроссплатформенных приложений на основе iOS. Сердцем Skip является умный транспилятор языка Swift в Kotlin, а для анализа исходного кода используется SwiftSyntax, после чего код преобразуется в Kotlin, сохраняя даже комментарии.
Разработчик утверждает, что Skip выполняет роль команды Android, создавая аналогичное приложение одновременно с iOS-версией. Благодаря сходству языков, результат часто не отличается от Kotlin, который был бы написан вручную.
#ios #swift
Обработка типизированных ошибок
Обрабатывать ошибки в Kotlin — не ракеты строить. На самом деле это просто, но не всегда очевидно.
В этой статье мы рассмотрим некоторые популярные паттерны обработки ошибок в Kotlin. Разберём практические примеры и то, какое влияние они могут оказать на когнитивную сложность и поддержку программ.
#android #kotlin
Видео-обзор Kotlin Timing API
Этот инструментарий позволит вам как новичку, так и опытному разработчику легко и точно замерять время выполнения различных операций в коде:
— Basic Time Measurement
— All About Durations
— Durations - Creating By Hand
— Durations - Getting Values
— Durations - Components
— Durations - ISO 8601 Strings
— Advanced Time Measurement
— Time Sources
— TestTimeSource
#android #kotlin
Возможна ли жизнь после плеймаркета
Вот вам статейка на субботнее утро про то, как и через что дистрибьютить Android приложение, если вам не повезло и вас удалили из Google Play.
Если лень читать, можно посмотреть/послушать:
Возможна ли жизнь после плеймаркета?
#android
Тайны множественных рекомпозиций
В этой статье patilshreyas/solving-the-mystery-of-recompositions-in-composes-lazylist-514d187079b9">мы рассмотрим проблему, которая часто снижает производительность приложений, отображающих данные в пользовательском интерфейсе с помощью компонентов LazyList
Jetpack Compose (LazyColumn
или LazyRow
).
Автор столкнулся с этой проблемой, когда работал над своим приложением, и нашёл способ её решить. После этого он получил несколько вопросов о подобных проблемах от других разработчиков в сообществе и решил поделиться своим опытом.
#android
Open Source лицензии
Если вы работаете с открытыми исходным кодом, выбираете зависимости для своего проекта, или распространяете свою библиотеку, то вам пригодится этот сайт.
TldrLegal — это справочник всех Open Source лицензий с объяснением их условий простым языком.
#android #ios
Математика за аналоговыми часами
В этой статье мы изучим основы математики, которые нужны для создания аналоговых часов. Вы удивитесь, как много вычислений применяется даже в такой простой задаче.
Автор будет пользоваться Jetpack Compose, но если вы прочтёте статью до конца и разберётесь в логике, то сможете воплотить это на любой платформе. Потому что вы будете знать суть процесса.
#android
Публикуем приложения с Gitlab CI
Вы устали возиться с ручной загрузкой apk-файлов? Автоматизируйте этот процесс с помощью Gitlab CI!
Сегодня мы разберём, как автоматически разместить приложение в Google Play, App Gallery и Firebase на примере онлайн-кинотеатра. Так же автор расскажет, как отправить эту сборку в Nexus.
#android
Bottom Sheet View Controller
Встречайте новый класс контроллера для iOS, который изменит ваше представление о всплывающих окнах. В статье представлен BottomSheet
с кастомной конфигурацией.
Этот подход предлагает автоматическое изменение размера, перетаскиваемое верхнее представление для закрытия, затемненный фон и множество других функций, которые улучшат пользовательский опыт.
#ios #дизайн #анимация
Архитектура iOS Microapps
Серия из 4-х частей про модульную архитектуру и Microapps в частности. В статьях в качестве примера демонстрируется реализация проекта по Microapps с помощью SPM.
— artemkvasnetcky/ios-microapp-architecture-part-1-50cd2bcaccd6">Part 1
— artemkvasnetcky/ios-microapps-architecture-part-2-1cc2ceefaaec">Part 2
— artemkvasnetcky/ios-microapps-architecture-part-3-f7a30b65077">Part 3
— artemkvasnetcky/ios-microapps-architecture-part-4-354f76821e82">Part 4
#ios #spm #архитектура
Управление памятью с Unsafe Swift
Управление памятью — важнейший аспект разработки программного обеспечения, обеспечивающий эффективное использование системных ресурсов и предотвращающий такие ошибки, как утечки памяти и сбои.
В статье рассматриваются расширенные возможности Swift по управлению памятью посредством использования его «небезопасных» конструкций, таких как UnsafeMutablePointer
и UnsafeRawPointer
.
#ios #swift #оптимизация
Jailbreak checker
Что самое важное в мире технологий? Правильно, безопасность на первом месте! Сегодня мы узнаем, как с помощью простых инструментов определить Jailbreak на устройстве и проинформировать пользователя о рисках.
В этой статье продуктовый разработчик из QIWI поделится опытом работы над задачей по снижению рисков при использовании приложения на устройствах с Jailbreak.
#ios #swift #безопасность
Читатели Типичного прислали ну очень много работ для конкурса «Лучший пет-проект 2023»
Вчера мы закрыли прием работ и отобрала из них только 25 лучших. Голосование начнется 6 ноября, поэтому у вас есть время чтобы не торопясь ознакомится с нашим шорт-листом:
https://tproger.ru/articles/luchwij-pet-proekt-2023-golosovanie-nachnyotsya-6-noyabrya
#diy #конкурс
В этот Хэллоуин звёзды предсказывают вам… 🎃
🃏В колоде для мобильных разрабов нашлось пять карт, одна из которых досталась вам. Что дальше?
1. Откройте карусель с фото.
2. Найдите вашу карту.
3. Узнайте предсказание.
✨ Это не всё! Переходите на сайт Дзена, чтобы узнать больше о вакансиях iOS-разработчиков, и откликайтесь на подходящую: https://vk.cc/cs1pZA
Реклама, ООО «Дзен.Платформа», erid: LjN8K9pVk
Сколько денег приносят разработчикам iOS и Android
Вы когда-нибудь задумывались, сколько денег приносят пользователи приложений? Оказывается, iOS в среднем в 7.4 раз ценнее для разработчика, чем Android.
Погрузитесь в мир аналитики вместе с этим исследованием и узнайте, почему пользователи App Store тратят в месяц 10.4$, в то время как любители Google Play – всего 1.4$.
#ios #android #аналитика
Хватит отвлекаться от созвона, чтобы записывать мысли
Телеграм-бот Voicee поможет вам транскрибировать запись встречи из Zoom! А ещё YouTube-видео, голосовые сообщения, .mp3, .m4a, .wma-файлы и другие форматы. На voicee.ru вы найдете ещё и API, чтобы прикрутить сервис к своему проекту.
А самое крутое, что сервис даже знаки препинания расставит верно! Попробовать бесплатно можно тут.
Реклама ИП Второв Александр Александрович, ИНН 402572009527, erid: LjN8KS9ZQ
Swift-библиотека для моделирования и визуализации графов
Её целью является расположение узлов графа так, что все рёбра имели бы более-менее одинаковую длину, ну и свести к минимуму число пересечений рёбер.
Часто подобное можно увидеть в визуализации соцсетей, связей страниц в той-же вики, например, и так далее.
Вы наверняка видели разные реализации таких штук на других языках, но вдруг вам пригодится и такое решение.
Сама либа от Zhen Li доступна здесь, и получившийся итог завораживает!
#ios #swift
Интересная новость и дискуссия в комментариях про то, стоит ли делать iOS открытой системой вроде macOS
Сложный вопрос, с одной стороны кайфово полноценно использовать линукс на компьютере, с другой, а зачем это на телефоне, если большинство людей используют на регулярной основе 5-10 приложений общего назначения (карты, мессенджер, банк и т.д.)
https://news.ycombinator.com/item?id=37663725
Продвинутые анимации в SwiftUI
Разработчик iOS-приложений делится секретами создания сложных анимаций в SwiftUI.
В серии статей он пошагово раскрывает возможности протокола Animatable
, модификатора GeometryEffect
и других инструментов фреймворка.
#ios
Аналитическая платформа data.ai опубликовала новый отчет по рынку, в котором:
— Топ-приложения в разбивке по критически-важным метрикам, включая: установки, траты пользователей и количество активных пользователей в месяц;
— Топ-чарт приложений и игр за Q3 2023 в 24 странах трёх регионах;
Почитайте и перешлите своим друзьям маркетологам.
На чём построена архитектура Рекомендаций Авито, и как к этому устройству привела история котёнка Портосика?
Ответы есть в фильме от команды инженеров AvitoTech. Там — большой и интересный рассказ о людях, которые создали сервис и о том, что скрыто от глаз пользователей «под капотом».
Переходите по ссылке, чтобы узнать всё про Рекомендации и алгоритмы: https://youtu.be/zopTexr7gfY
Реклама ООО «Авито Тех» LjN8K3e4n
Удобный инструмент монетизации
Команда SB-Games решила обратиться к экспертам, чтобы оптимизировать монетизацию и получить максимальную выгоду от своих приложений.
Результаты приятно удивили, разработчики смогли поднять показатель ARPU (средняя выручка на одного пользователя) в среднем на 40% благодаря сервису «Простая монетизация»
#android #ios
Библиотека для кастомных клавиатур
KeyboardKit — это опенсорсная библиотека, с помощью которой можно создавать кастомные Keyboard Extensions для всех Apple платформ.
Основная ценность проекта — это множество готовых компонентов для создания клавиатуры, поскольку системный API довольно примитивен.
#ios