Подборка статей про снижение времени запуска
• Официальное руководство Apple
• Как мы сократили время запуска нашего iOS-приложения на 60%
• Как 5 приложений для iOS могут сократить время запуска в среднем на 28%
• Измерение задержки старта iOS-приложений в масштабе Uber
• Официальное руководство Google
• Как мы снизили время запуска FullStory на Android на 75%
• Как мы сократили время запуска Android-приложения на 77%
• Как один Android-разработчик за месяц сократил время запуска приложения Lyft 21%
Платформа: iOS/Android
• Официальное руководство Apple
• Как мы сократили время запуска нашего iOS-приложения на 60%
• Как 5 приложений для iOS могут сократить время запуска в среднем на 28%
• Измерение задержки старта iOS-приложений в масштабе Uber
• Официальное руководство Google
• Как мы снизили время запуска FullStory на Android на 75%
• Как мы сократили время запуска Android-приложения на 77%
• Как один Android-разработчик за месяц сократил время запуска приложения Lyft 21%
Платформа: iOS/Android
Apple Developer Documentation
Reducing your app’s launch time | Apple Developer Documentation
Create a more responsive experience with your app by minimizing time spent in startup.
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Создание часов в Jetpack Compose с помощью Canvas
В этой статье я объясню, как мы можем реализовать это с помощью API Compose Canvas. Я также расскажу о математических концепциях, связанных с вычислением координат на окружности и рисованием фигур и текста вокруг этих координат. Многие из используемых здесь формул были получены методом проб и ошибок, поэтому их понимание поначалу может оказаться сложным. Однако я буду упрощать объяснения с помощью диаграмм, чтобы облегчить их понимание. Надеюсь, вам понравится читать эту статью.
Статья: https://proandroiddev.com/crafting-a-clock-with-canvas-9b1ad430da72
Платформа: Android
В этой статье я объясню, как мы можем реализовать это с помощью API Compose Canvas. Я также расскажу о математических концепциях, связанных с вычислением координат на окружности и рисованием фигур и текста вокруг этих координат. Многие из используемых здесь формул были получены методом проб и ошибок, поэтому их понимание поначалу может оказаться сложным. Однако я буду упрощать объяснения с помощью диаграмм, чтобы облегчить их понимание. Надеюсь, вам понравится читать эту статью.
Статья: https://proandroiddev.com/crafting-a-clock-with-canvas-9b1ad430da72
Платформа: Android
❤3
Mapbox Maps SDK для iOS - это открытая библиотека для отображения интерактивных кастомизируемых карт в iOS. Она принимает стили карт, применяет их к векторным плиткам и отображает их с помощью Metal. Есть отдельные библиотеки для построения маршрутов, поиска локаций. То же самое и для Android.
Mapbox Maps SDK iOS на GitHub: https://github.com/mapbox/mapbox-maps-ios
Платформа: iOS
⭐️: 322
Mapbox Maps SDK iOS на GitHub: https://github.com/mapbox/mapbox-maps-ios
Платформа: iOS
⭐️: 322
Обзор библиотек для скриншот-тестирования Android проектов
Меня зовут Олег Осипенко и эта статья является развитием моего доклада, посвященного опыту внедрения скриншот-тестирования, который я презентовал на прошедшей недавно в Екатеринбурге конференции DUMP. Отдельную часть доклада я посвятил разбору имеющихся библиотек, но, будучи ограничен временными рамками доклада, я не мог подробно остановиться на их особенностях. И сейчас я хотел бы восполнить это упущение. К тому же уже после доклада я нашел еще 2 новых библиотеки в дополнение к тем 5, что я упоминал в своем выступлении.
Статья: https://habr.com/ru/articles/744796/
Платформа: Android
Меня зовут Олег Осипенко и эта статья является развитием моего доклада, посвященного опыту внедрения скриншот-тестирования, который я презентовал на прошедшей недавно в Екатеринбурге конференции DUMP. Отдельную часть доклада я посвятил разбору имеющихся библиотек, но, будучи ограничен временными рамками доклада, я не мог подробно остановиться на их особенностях. И сейчас я хотел бы восполнить это упущение. К тому же уже после доклада я нашел еще 2 новых библиотеки в дополнение к тем 5, что я упоминал в своем выступлении.
Статья: https://habr.com/ru/articles/744796/
Платформа: Android
Хабр
Обзор библиотек для скриншот-тестирования Android проектов. Часть 1
Практика скриншот-тестирования получает все большее распространение в сфере андроид-разработки, одним из свидетельств чего можно считать появление всё новых библиотек. Меня зовут Олег Осипенко и...
Видео и подкасты за неделю
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Посмотрели какое-то другое интересное видео? Отправьте боту -> 🧑🏻💻
•
(iOS Ru)
СЛЕЗЫ ВКАТУНА: Реальная история входа в IT в 2023•
(iOS Ru)
Жизненный цикл объектов SwiftUI•
(iOS En)
Implementing Carousel Slider Inspired From Material Carousel•
(iOS
En)
SwiftUI Glassmorphism - Glass Background Effect•
(iOS En)
Easily Add Filtering In SwiftData Using Searchable•
(And Ru)
Android: смотрите на больших экранах•
(And Ru)
Готовим конфигурацию Android-приложения с помощью Dynamic Proxy и рефлексии•
(And En)
Location location location, revisited - Android Developers Backstage•
(And En)
Intents & Intent Filters - Android Basics 2023•
(And En)
Resources & Qualifiers - Android Basics 2023•
(Crs Ru)
Flutter meetup от Evrone•
(Crs En)
Creating Kotlin Multiplatform SDK•
(Dev Ru)
Охэхэнный подкаст: кто такой тимлид•
(Dev Ru)
Видео Yandex BDUI Conf•
(Dev Ru)
Разгоняем BLE•
(Dev Ru)
Avito Design Talk: дизайнер vs. продактПосмотрели какое-то другое интересное видео? Отправьте боту -> 🧑🏻💻
AppTractor
СЛЕЗЫ ВКАТУНА: Реальная история входа в IT в 2023
После решения всех задач мы еще раз проговорили важные моменты, подвели итоги и договорились сделать еще один такой созвон. Содержание: 00:00 — Intro 00:23 — Предыстория 01:42 — СЛЕЗЫ ВКАТУНА 02:10 — Курс iOS разработчик с нуля 02:32 — Проблема решения задач…
Paraphrase - плагин Gradle, который генерирует типобезопасные форматеры для строковых ресурсов Android в формате сообщений ICU. Он легко интегрируется с Android Views и Compose UI.
Paraphrase на GitHub: https://github.com/cashapp/paraphrase
Статья: https://code.cash.app/paraphrase
Платформа: Android
⭐️ : 87
Paraphrase на GitHub: https://github.com/cashapp/paraphrase
Статья: https://code.cash.app/paraphrase
Платформа: Android
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - cashapp/paraphrase: A Gradle plugin that generates type-safe formatters for Android string resources in the ICU message…
A Gradle plugin that generates type-safe formatters for Android string resources in the ICU message format. - cashapp/paraphrase
❤1
Бесплатный курс по основам Continuous Delivery
Опубликован бесплатный краткий курс по концепциям, лежащим в основе CD (Continuous Delivery). Он представлен Дейвом Фарли, разработчиком программного обеспечения, который сделал новаторскую работу в области DevOps, CD, CI, BDD, TDD и современной программной инженерии.
Он является соавтором книги «Continuous Delivery», которая получила награду Jolt Excellence Award в 2011 году, а недавно написал книгу Modern Software Engineering.
Курс Continuous Delivery Fundamentals была разработан для тех, кто впервые сталкивается с Continuous Delivery и хочет больше узнать о технологии.
Новость: https://apptractor.ru/learn/besplatnyy-kurs-po-osnovam-continuous-delivery.html
Платформа: обучение
Опубликован бесплатный краткий курс по концепциям, лежащим в основе CD (Continuous Delivery). Он представлен Дейвом Фарли, разработчиком программного обеспечения, который сделал новаторскую работу в области DevOps, CD, CI, BDD, TDD и современной программной инженерии.
Он является соавтором книги «Continuous Delivery», которая получила награду Jolt Excellence Award в 2011 году, а недавно написал книгу Modern Software Engineering.
Курс Continuous Delivery Fundamentals была разработан для тех, кто впервые сталкивается с Continuous Delivery и хочет больше узнать о технологии.
Новость: https://apptractor.ru/learn/besplatnyy-kurs-po-osnovam-continuous-delivery.html
Платформа: обучение
Swift 5.9. Что нового?
Swift 5.9 - это новый большой релиз, который включает в себя ряд улучшений и новых функций. К ним относятся упрощенные способы работы с операторами if и switch, макросы (то есть код, который может генерировать или трансформировать другой код), некопируемые типы (это новая функция, которая предотвращает копирование объектов определенного типа), кастомные исполнители акторов (что связано с моделью конкурентного программирования в Swift) и многое другое.
Статья: https://habr.com/ru/articles/744344/
Платформа: iOS
Swift 5.9 - это новый большой релиз, который включает в себя ряд улучшений и новых функций. К ним относятся упрощенные способы работы с операторами if и switch, макросы (то есть код, который может генерировать или трансформировать другой код), некопируемые типы (это новая функция, которая предотвращает копирование объектов определенного типа), кастомные исполнители акторов (что связано с моделью конкурентного программирования в Swift) и многое другое.
Статья: https://habr.com/ru/articles/744344/
Платформа: iOS
Хабр
Swift 5.9. Что нового?
Хотя Swift 6 уже не за горами, Apple продолжает добавлять новые и улучшенные функции в текущую версию Swift 5.x. Swift 5.9 - это новый большой релиз, который включает в себя ряд улучшений и новых...
This media is not supported in your browser
VIEW IN TELEGRAM
Jetpack compose - Как реализовать собственные пейджинг индикаторы
Индикаторы страниц играют важную роль в перемещении пользователей по нескольким экранам или страницам приложения. Хотя Jetpack Compose предлагает широкий спектр встроенных компонентов, настройка индикаторов пейджера в соответствии с уникальным стилем и брендингом вашего приложения может улучшить впечатления пользователей.
Статья: https://blog.canopas.com/jetpack-compose-how-to-implement-custom-pager-indicators-8b6a01d63964
Платформа: Android
Индикаторы страниц играют важную роль в перемещении пользователей по нескольким экранам или страницам приложения. Хотя Jetpack Compose предлагает широкий спектр встроенных компонентов, настройка индикаторов пейджера в соответствии с уникальным стилем и брендингом вашего приложения может улучшить впечатления пользователей.
Статья: https://blog.canopas.com/jetpack-compose-how-to-implement-custom-pager-indicators-8b6a01d63964
Платформа: Android
iOS Learning Materials - список статей, ресурсов, учебников, вопросов и ответов Stack Overflow и Quora, репозиториев GitHub и полезных ресурсов, которые могут помочь вам немного углубиться в iOS. Все ресурсы разбиты на подкатегории, что упрощает навигацию.
Есть некоторые темы, не имеющие прямого отношения к iOS, такие как компьютерная графика, машинное обучение или паттерны проектирования - но они действительно в какой-то мере связаны с iOS-разработкой.
iOS Learning Materials на GitHub: https://github.com/eleev/ios-learning-materials
Платформа: iOS
⭐️ : 2.1K
Есть некоторые темы, не имеющие прямого отношения к iOS, такие как компьютерная графика, машинное обучение или паттерны проектирования - но они действительно в какой-то мере связаны с iOS-разработкой.
iOS Learning Materials на GitHub: https://github.com/eleev/ios-learning-materials
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Создание интерактивного виджета с помощью App Intents
В этом примере мы создадим интерактивный виджет, который увеличивает глобальный счетчик в целевом приложении, используя нажатия кнопки и App Intents.
Статья: https://apptractor.ru/info/articles/sozdanie-interaktivnogo-vidzheta-s-pomoschyu-app-intents.html
Платформа: iOS
В этом примере мы создадим интерактивный виджет, который увеличивает глобальный счетчик в целевом приложении, используя нажатия кнопки и App Intents.
Статья: https://apptractor.ru/info/articles/sozdanie-interaktivnogo-vidzheta-s-pomoschyu-app-intents.html
Платформа: iOS
👍3
Упорядочивание Talkback в Android Jetpack Compose
Разработчики Android обычно полагаются на стандартную работу TalkBack. Но иногда нам приходится пачкать руки и вручную изменять порядок следования UI-компонентов. Семантические свойства Android Compose - это место, где разработчики могут изменять описания содержимого и объединять элементы в группы объявлений. С выходом androidx.compose.ui версии 1.5.0-beta01 мы теперь можем управлять порядком обхода TalkBack и здесь!
Статья: https://medium.com/livefront/talkback-ordering-in-android-jetpack-compose-bbe5d6349527
Платформа: Android
Разработчики Android обычно полагаются на стандартную работу TalkBack. Но иногда нам приходится пачкать руки и вручную изменять порядок следования UI-компонентов. Семантические свойства Android Compose - это место, где разработчики могут изменять описания содержимого и объединять элементы в группы объявлений. С выходом androidx.compose.ui версии 1.5.0-beta01 мы теперь можем управлять порядком обхода TalkBack и здесь!
Статья: https://medium.com/livefront/talkback-ordering-in-android-jetpack-compose-bbe5d6349527
Платформа: Android
❤1
Nostr — это децентрализованный сетевой протокол для распределенной системы социальных сетей. Amethyst - нативное приложение для него, клиент, созданный с помощью Kotlin и Jetpack Compose. Общая архитектура состоит из пользовательского интерфейса, который использует обычные State/ViewModel/Composition, сервисного слоя, который соединяется с реле Nostr, и слоя модели/хранилища, который хранит все объекты Nostr в памяти, в полном OO-графе.
Amethyst на GitHub: https://github.com/vitorpamplona/amethyst
Платформа: Android
⭐️: 792
Amethyst на GitHub: https://github.com/vitorpamplona/amethyst
Платформа: Android
⭐️: 792
❤1🔥1
Бесплатный курс по Natural Language Processing (NLP) от The Hugging Face
The Hugging Face, платформа науки о данных с сообществом ученых, исследователей и ML-инженеров, которые вносят свой вклад в проекты с открытым исходным кодом, предлагает бесплатный курс, который поможет вам пройти путь от новичка до эксперта в области обработки естественного языка.
Новость: https://apptractor.ru/learn/nlp-hugging-face.html
Платформа: обучение
The Hugging Face, платформа науки о данных с сообществом ученых, исследователей и ML-инженеров, которые вносят свой вклад в проекты с открытым исходным кодом, предлагает бесплатный курс, который поможет вам пройти путь от новичка до эксперта в области обработки естественного языка.
Новость: https://apptractor.ru/learn/nlp-hugging-face.html
Платформа: обучение
Создание и публикация собственной библиотеки для Android на Kotlin (2023)
В этом руководстве мы узнали, как создать пользовательскую библиотеку, добавить ее в локальный проект и протестировать. В следующей части этой серии мы будем работать над публикацией нашей библиотеки Android в Maven.
Статья: https://medium.com/@prashantdixit_87612/creating-and-publishing-your-own-android-library-in-kotlin-2023-part-1-3e542dad4ca0
Платформа: Android
В этом руководстве мы узнали, как создать пользовательскую библиотеку, добавить ее в локальный проект и протестировать. В следующей части этой серии мы будем работать над публикацией нашей библиотеки Android в Maven.
Статья: https://medium.com/@prashantdixit_87612/creating-and-publishing-your-own-android-library-in-kotlin-2023-part-1-3e542dad4ca0
Платформа: Android
Medium
Creating and publishing your own Android library in Kotlin (2023) | Part -1
In this comprehensive beginner’s guide, we will embark on an exciting journey into the realm of Android development. Get ready to create…
Forwarded from Mobile Development by AppTractor
This media is not supported in your browser
VIEW IN TELEGRAM
Яндекс проводит вечеринку для сообщества мобильных разработчиков — Yandex Summer Mobile Party!
12 июля приглашаем мобильных разработчиков на вечеринку — обсудим последние новости индустрии и хорошо проведём вечер с едой, коктейлями и музыкой. Приходите общаться с ребятами из Яндекса и знакомиться с сообществом.
Что вас ждёт:
— Lightning Talks про разработку и жизнь от мобильных разработчиков;
— Лекция от популяризатора физики Дмитрия Побединского;
— Настольные игры от Яндекса, зоны отдыха и летние коктейли.
Место проведения:
Плюс Дача в Парке Горького
В этот раз формат только оффлайн. Количество мест ограничено – ждём ваши заявки, и 10 июля вышлем приглашения на почту.
До встречи!
Программа и регистрация
12 июля приглашаем мобильных разработчиков на вечеринку — обсудим последние новости индустрии и хорошо проведём вечер с едой, коктейлями и музыкой. Приходите общаться с ребятами из Яндекса и знакомиться с сообществом.
Что вас ждёт:
— Lightning Talks про разработку и жизнь от мобильных разработчиков;
— Лекция от популяризатора физики Дмитрия Побединского;
— Настольные игры от Яндекса, зоны отдыха и летние коктейли.
Место проведения:
Плюс Дача в Парке Горького
В этот раз формат только оффлайн. Количество мест ограничено – ждём ваши заявки, и 10 июля вышлем приглашения на почту.
До встречи!
Программа и регистрация
Billboard - это модуль, позволяющий встраивать рекламные объявления в приложения, созданные инди-разработчиками. Его уникальная особенность заключается в том, что он показывает рекламу без использования мер слежения или нежелательных cookies. Таким образом, ваш пользователь все еще может раздражаться от рекламы, но не получает неприятных последствий, поэтому вы можете продавать отключение объявлений для вашего премиум-уровня. Поддерживает SwiftUI, можно использовать собственный источник рекламы и различные ее типы.
Billboard на GitHub: https://github.com/hiddevdploeg/Billboard
Платформа: iOS
⭐️: 346
Billboard на GitHub: https://github.com/hiddevdploeg/Billboard
Платформа: iOS
⭐️: 346
❤3
.xcstrings в Xcode 15
Всё изменилось с приходом Xcode 15, где локализация и плюрализация строк были значительно улучшены. Теперь там один файл xcstrings. Это каталог, который хранит в себе все ключи и строки как для переводов на другие языки, так и для переводов для множественного числа. Важно отметить, что всё это умеет бэкпортиться на старые версии iOS путём разбиения xcstrings на .strings и .stringsdict. То есть всё равно под капотом используется старый формат, но мы, как разработчики, работаем уже с удобным для нас интерфейсом.
Статья: https://habr.com/ru/companies/cleverpumpkin/articles/746050/
Платформа: iOS
Всё изменилось с приходом Xcode 15, где локализация и плюрализация строк были значительно улучшены. Теперь там один файл xcstrings. Это каталог, который хранит в себе все ключи и строки как для переводов на другие языки, так и для переводов для множественного числа. Важно отметить, что всё это умеет бэкпортиться на старые версии iOS путём разбиения xcstrings на .strings и .stringsdict. То есть всё равно под капотом используется старый формат, но мы, как разработчики, работаем уже с удобным для нас интерфейсом.
Статья: https://habr.com/ru/companies/cleverpumpkin/articles/746050/
Платформа: iOS
Цензурирование TextInputLayout как это сделано в паролях
Вы когда-нибудь задавались вопросом, как сделать текст внутри TextInputLayout закрытым и/или частично закрытым? Твист заключается в том, что цензурировать текст, не накладывая свойства "пароль" на его inputType, чтобы скрыть текст. Как насчет того, чтобы сначала установить его как цензурированный текст, а затем поместить его в TextInputLayout? Это может сработать, но потребуются дополнительные шаги, чтобы вернуться к оригиналу при выполнении процесса валидации. Тогда как?
Статья: https://medium.com/@fadhifatah_/textinputlayout-censoring-with-password-like-method-303b986f5364
Платформа: Android
Вы когда-нибудь задавались вопросом, как сделать текст внутри TextInputLayout закрытым и/или частично закрытым? Твист заключается в том, что цензурировать текст, не накладывая свойства "пароль" на его inputType, чтобы скрыть текст. Как насчет того, чтобы сначала установить его как цензурированный текст, а затем поместить его в TextInputLayout? Это может сработать, но потребуются дополнительные шаги, чтобы вернуться к оригиналу при выполнении процесса валидации. Тогда как?
Статья: https://medium.com/@fadhifatah_/textinputlayout-censoring-with-password-like-method-303b986f5364
Платформа: Android
Medium
TextInputLayout Censoring With Password-Like Method
Ever wonder, how to make the text inside TextInputLayout censored and/or partially censored?
Как создавать архитектуру Android-приложений: глубокое погружение в принципы
Существует множество советов о «правильном» способе проектирования программного обеспечения. Многие из них противоречат друг другу. Поэтому в этой статье я расскажу вам о принципах архитектуры, чтобы вы могли сами решить, что подходит для вашего приложения. Итак, эта статья о принципах, а не о правилах.
Чтобы стать хорошим архитектором, изучайте принципы, а не правила. Так вы сможете адаптировать архитектуру к тому, что подходит для вашего программного обеспечения и команды.
Перевод: https://apptractor.ru/arhitektura-android
Платформа: Android
Существует множество советов о «правильном» способе проектирования программного обеспечения. Многие из них противоречат друг другу. Поэтому в этой статье я расскажу вам о принципах архитектуры, чтобы вы могли сами решить, что подходит для вашего приложения. Итак, эта статья о принципах, а не о правилах.
Чтобы стать хорошим архитектором, изучайте принципы, а не правила. Так вы сможете адаптировать архитектуру к тому, что подходит для вашего программного обеспечения и команды.
Перевод: https://apptractor.ru/arhitektura-android
Платформа: Android
👍1
Okio - это библиотека, которая дополняет java.io и java.nio, облегчая доступ, хранение и обработку данных. Она начиналась как компонент OkHttp, HTTP-клиента, включенного в Android. Библиотека хорошо проработана и готова к решению новых задач. Сделана Джейком Вортоном и Square. С ее помощью вы можете, например, читать текстовый файл строчка за строчкой, писать в файл, работать с разными кодировками, писать бинарные файлы, работать с сокетами, хэшировать данные и т.п.
Okio на GitHub: https://github.com/square/okio
Платформа: Android
⭐️ : 8.4K
Okio на GitHub: https://github.com/square/okio
Платформа: Android
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - square/okio: A modern I/O library for Android, Java, and Kotlin Multiplatform.
A modern I/O library for Android, Java, and Kotlin Multiplatform. - square/okio