Что под капотом встроенных приложений в iOS 15?
Хоть Apple не выкладывает исходники своих приложений для iPhone, по их файлам можно определить, на каком языке они написаны. Так, исследователи проанализировали бинарные файлы приложений и выяснили много интересного:
— Только 13% бинарных файлов имеют Swift-код, а 89% — код на Objective-C. Часть файлов содержит код на нескольких языках, поэтому сумма превышает 100%. Из статистики видно, что Objective-C до сих пор является доминирующим языком для встроенных в iPhone приложений.
— 14 приложений используют SwiftUI, и 9 из них обновились на SwiftUI в 2021 году. Это является наглядной демонстрацией того, что в этом году для SwiftUI наступил поворотный момент.
— C и C++ продолжают активно использоваться в низкоуровневых фреймворках.
Если сравнить с предыдущими версиями iOS, то Swift и SwiftUI продолжают активно внедряться в существующие приложения.
#ios
Хоть Apple не выкладывает исходники своих приложений для iPhone, по их файлам можно определить, на каком языке они написаны. Так, исследователи проанализировали бинарные файлы приложений и выяснили много интересного:
— Только 13% бинарных файлов имеют Swift-код, а 89% — код на Objective-C. Часть файлов содержит код на нескольких языках, поэтому сумма превышает 100%. Из статистики видно, что Objective-C до сих пор является доминирующим языком для встроенных в iPhone приложений.
— 14 приложений используют SwiftUI, и 9 из них обновились на SwiftUI в 2021 году. Это является наглядной демонстрацией того, что в этом году для SwiftUI наступил поворотный момент.
— C и C++ продолжают активно использоваться в низкоуровневых фреймворках.
Если сравнить с предыдущими версиями iOS, то Swift и SwiftUI продолжают активно внедряться в существующие приложения.
#ios
Масштабирование Jetpack Compose Navigation
Если для Android-проекта использовать Jetpack Compose в качестве основной технологии, то оптимально иметь одну Activity, а всю навигацию реализовать через Compose.
В этом случае стандартные методы навигации через NavHost успешно работают при небольшом количестве маршрутов. А если маршрутов сотни?
В статье описано возможное решение проблемы масштабирования:
https://tprg.ru/rJLi
#android #compose
Если для Android-проекта использовать Jetpack Compose в качестве основной технологии, то оптимально иметь одну Activity, а всю навигацию реализовать через Compose.
В этом случае стандартные методы навигации через NavHost успешно работают при небольшом количестве маршрутов. А если маршрутов сотни?
В статье описано возможное решение проблемы масштабирования:
https://tprg.ru/rJLi
#android #compose
Сейчас идут последние рабочие деньки, и скоро вместо клавиатуры и тачпада (мышки) в руках будет вилка и бокал шампанского.
Успели ли вы закрыть все срочные таски? Поделитесь тем, как вам удаётся оставаться эффективными даже в преддверии новогодних праздников.
#чат
Успели ли вы закрыть все срочные таски? Поделитесь тем, как вам удаётся оставаться эффективными даже в преддверии новогодних праздников.
#чат
Закрыли все задачи перед Новым годом?
Anonymous Poll
18%
Да, теперь можно готовиться к отдыху 🎄
40%
Нет, ещё осталось много работы 🤖
21%
Делаю вид, что пофиксил баги 💪
22%
Я сам себе даю задачи 😎
Создаём несколько вариантов одного Android-приложения
В Android существует технология Build Flavors, в помощью которой можно подготовить несколько вариантов приложения. Они могут отличаться функциональностью и оформлением, но в целом они будут схожи.
Подобный подход может пригодиться как минимум в двух случаях:
1. Создание полной и урезанной версии приложения (платная и бесплатная версия).
2. Адаптация приложения под различные требования бизнеса (разные кейсы использования, доступы и т.д.).
Статья ниже не заменит документацию, но поможет лучше понять, как Flavors работает:
https://tprg.ru/Otz2
#android
В Android существует технология Build Flavors, в помощью которой можно подготовить несколько вариантов приложения. Они могут отличаться функциональностью и оформлением, но в целом они будут схожи.
Подобный подход может пригодиться как минимум в двух случаях:
1. Создание полной и урезанной версии приложения (платная и бесплатная версия).
2. Адаптация приложения под различные требования бизнеса (разные кейсы использования, доступы и т.д.).
Статья ниже не заменит документацию, но поможет лучше понять, как Flavors работает:
https://tprg.ru/Otz2
#android
👍1
Создаём первое приложение на Flutter — «Тайный Санта»
Серия YouTube-роликов от команды VK поможет разработать приложение «Тайный Санта» и базово освоить Flutter:
1. Введение в Flutter. Каркас приложения.
Вы познакомитесь с принципами работы с Flutter и устройством Flutter-приложения, а также создадите первый экран приложения с полем ввода и с переходом на следующую страницу.
2. Логика приложения.
Вы научитесь делать логику приложения, которая в зависимости от сохранённого состояния будет открывать одну или другую страницу приложения.
3. Списки в Flutter и наполнение их данными.
В видео объясняется, как создать список друзей и наполнить его данными. Также вы научитесь верстать ячейки списка.
#flutter #начинающим
Серия YouTube-роликов от команды VK поможет разработать приложение «Тайный Санта» и базово освоить Flutter:
1. Введение в Flutter. Каркас приложения.
Вы познакомитесь с принципами работы с Flutter и устройством Flutter-приложения, а также создадите первый экран приложения с полем ввода и с переходом на следующую страницу.
2. Логика приложения.
Вы научитесь делать логику приложения, которая в зависимости от сохранённого состояния будет открывать одну или другую страницу приложения.
3. Списки в Flutter и наполнение их данными.
В видео объясняется, как создать список друзей и наполнить его данными. Также вы научитесь верстать ячейки списка.
#flutter #начинающим
👍1
Как правильно передавать действия пользователя между компонентами iOS-приложения
Для решения задачи можно использовать встроенный в iOS инструмент Responder Chain. В официальной документации о нём рассказано не очень понятно и подробно, поэтому статья призвана показать всю мощь и гибкость механизма:
https://tprg.ru/PrIE
#ios
Для решения задачи можно использовать встроенный в iOS инструмент Responder Chain. В официальной документации о нём рассказано не очень понятно и подробно, поэтому статья призвана показать всю мощь и гибкость механизма:
https://tprg.ru/PrIE
#ios
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Панель для выбора рейтинга на Jetpack Compose
С помощью компонента можно выстроить собственную систему рейтинга в приложении.
Как использовать: https://github.com/a914-gowtham/compose-ratingbar
#android #библиотеки #compose #ui
С помощью компонента можно выстроить собственную систему рейтинга в приложении.
Как использовать: https://github.com/a914-gowtham/compose-ratingbar
#android #библиотеки #compose #ui
👍1
Приложение на Flutter: сеть, локализация, главный экран, локальный поиск
В предыдущей статье из цикла было показано, как сформировать идею приложения и реализовать базовую инфраструктуру на примере Flutter-проекта с котировками акций.
Скелет приложения создан, и пора двигаться дальше. В новом материале подробно объясняется, как реализовать:
— сетевой слой;
— UI для первого экрана приложения;
— локальный поиск;
— удобную локализацию:
https://tprg.ru/yUmS
#flutter #начинающим
В предыдущей статье из цикла было показано, как сформировать идею приложения и реализовать базовую инфраструктуру на примере Flutter-проекта с котировками акций.
Скелет приложения создан, и пора двигаться дальше. В новом материале подробно объясняется, как реализовать:
— сетевой слой;
— UI для первого экрана приложения;
— локальный поиск;
— удобную локализацию:
https://tprg.ru/yUmS
#flutter #начинающим
Telegram
Мобильная разработка
Приложение на Flutter: от идеи до реализации
Тут разработчик поделился своим опытом реализации pet-проекта на Flutter — приложения с котировками акций, показанными в виде списка и графиков.
Гайд отлично подойдёт начинающим, поскольку покрывает весь процесс…
Тут разработчик поделился своим опытом реализации pet-проекта на Flutter — приложения с котировками акций, показанными в виде списка и графиков.
Гайд отлично подойдёт начинающим, поскольку покрывает весь процесс…
Android-библиотека для отображения аватарок пользователей
Можно настроить форму изображения, рамку, индикаторы и текст инициалов.
Как использовать: https://github.com/getStream/avatarview-android
#android #библиотеки #ui
Можно настроить форму изображения, рамку, индикаторы и текст инициалов.
Как использовать: https://github.com/getStream/avatarview-android
#android #библиотеки #ui
Kotlin Flow: всё, что нужно знать Android-разработчику
Раньше в Android-приложениях для обработки потоков данных использовали LiveData и RxJava. Однако позже в Kotlin появился встроенный инструмент Flow, который аналогично LiveData и RxJava реализует паттерн наблюдателя.
В одной статье собрана вся необходимая информация по потокам (flows) в Kotlin, чтобы начать их применять в собственных проектах:
https://tprg.ru/7gHT
#kotlin #android
Раньше в Android-приложениях для обработки потоков данных использовали LiveData и RxJava. Однако позже в Kotlin появился встроенный инструмент Flow, который аналогично LiveData и RxJava реализует паттерн наблюдателя.
В одной статье собрана вся необходимая информация по потокам (flows) в Kotlin, чтобы начать их применять в собственных проектах:
https://tprg.ru/7gHT
#kotlin #android
👍1
UIView под капотом
Помните статью, где разбирается устройство UI в iOS-приложении? Вышло её продолжение про UIView.
В новой статье автор рассмотрел, как в действительности работает вращение и поворот объектов на экране:
https://tprg.ru/SRa5
#ios
Помните статью, где разбирается устройство UI в iOS-приложении? Вышло её продолжение про UIView.
В новой статье автор рассмотрел, как в действительности работает вращение и поворот объектов на экране:
https://tprg.ru/SRa5
#ios
Telegram
Мобильная разработка
А точно ли UIKit про графический интерфейс?
UI приложения — это не только графический интерфейс, но и интерфейсы взаимодействия пользователя: тачскрин, клавиатура или мышь. И сам UIKit в iOS-приложении отвечает за последнее — распознавание и обработку …
UI приложения — это не только графический интерфейс, но и интерфейсы взаимодействия пользователя: тачскрин, клавиатура или мышь. И сам UIKit в iOS-приложении отвечает за последнее — распознавание и обработку …
🌚1
Гайд по UI-тестированию Android-приложений
Внедрение инструментального тестирования в рабочий процесс вашей команды может потребовать немало времени и усилий.
Руководство поможет освоить UI- и Screenshot-тестирование без боли и избежать распространённых ошибок:
https://android-ui-testing.github.io/Cookbook/home/
#android #тестирование
Внедрение инструментального тестирования в рабочий процесс вашей команды может потребовать немало времени и усилий.
Руководство поможет освоить UI- и Screenshot-тестирование без боли и избежать распространённых ошибок:
https://android-ui-testing.github.io/Cookbook/home/
#android #тестирование
SwiftUI-библиотека с сезонными анимациями
Доступны эффекты осени (падающие листья), зимы (снежинки), весны (цветы) и лета (солнце).
Как использовать: https://github.com/yhondri/HolidayThemes
#ios #swiftui #библиотеки
Доступны эффекты осени (падающие листья), зимы (снежинки), весны (цветы) и лета (солнце).
Как использовать: https://github.com/yhondri/HolidayThemes
#ios #swiftui #библиотеки
Лучшие плагины для Android Studio
Android-разработчик поделился полезными плагинами, которые существенно упростят вашу работу с Android-проектами. А чтобы кулеры компьютера не перебивали шум самолёта (мы же знаем, как горяча Android Studio), вы узнаете о встроенных в IDE плагинах, которые можно отключить:
https://youtu.be/q8jS6dJqdBk
#android #начинающим
Android-разработчик поделился полезными плагинами, которые существенно упростят вашу работу с Android-проектами. А чтобы кулеры компьютера не перебивали шум самолёта (мы же знаем, как горяча Android Studio), вы узнаете о встроенных в IDE плагинах, которые можно отключить:
https://youtu.be/q8jS6dJqdBk
#android #начинающим
YouTube
Все мои любимые плагины Android Studio
Кирилл рассказывает о своих самых любимы плагинах Android Studio, которые повышают его продуктивность
🔗 Yandex Mobile Weekend Offer 9-10 октября https://bit.ly/3EKTV2S
💰 Поддержать проект на Boosty https://bit.ly/3sratqQ или Patreon https://patreon.com/…
🔗 Yandex Mobile Weekend Offer 9-10 октября https://bit.ly/3EKTV2S
💰 Поддержать проект на Boosty https://bit.ly/3sratqQ или Patreon https://patreon.com/…
Как реализовать кастомную панель вкладок в вашем iOS-приложении
UI-дизайнер может предложить такой концепт панель вкладок (Tab Bar), что реализовать его нативными инструментами сложно.
Остаётся только писать собственное решение, и гайд ответит на все основные вопросы по созданию кастомной панели вкладок:
https://tprg.ru/3OJQ
#ios
UI-дизайнер может предложить такой концепт панель вкладок (Tab Bar), что реализовать его нативными инструментами сложно.
Остаётся только писать собственное решение, и гайд ответит на все основные вопросы по созданию кастомной панели вкладок:
https://tprg.ru/3OJQ
#ios
This media is not supported in your browser
VIEW IN TELEGRAM
Возможно, именно так выглядит худшая клавиатура в мире
Лучшее спасение от новогоднего похмелья: попробуйте написать вменяемый текст на клавиатуре tOndO keyboard (приложение доступно в Google Play).
По заявлению разработчика, компоновка элементов на клавиатуре призвана ускорить ввод. Так ли это на самом деле, сказать трудно.
#android #ui
Лучшее спасение от новогоднего похмелья: попробуйте написать вменяемый текст на клавиатуре tOndO keyboard (приложение доступно в Google Play).
По заявлению разработчика, компоновка элементов на клавиатуре призвана ускорить ввод. Так ли это на самом деле, сказать трудно.
#android #ui
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Парсер SVG-файлов для iOS
Библиотека SVGView считывает информацию из SVG-изображения и рендерит его при помощи SwiftUI. У неё есть ещё одна интересная фича: вы можете добавить анимацию различных элементов изображения и даже добавить немного интерактива. Так и был реализован Пикачу, который «следит» за жестами пользователя.
Репозиторий: https://github.com/exyte/SVGView
#ios #swiftui #библиотеки #ui
Библиотека SVGView считывает информацию из SVG-изображения и рендерит его при помощи SwiftUI. У неё есть ещё одна интересная фича: вы можете добавить анимацию различных элементов изображения и даже добавить немного интерактива. Так и был реализован Пикачу, который «следит» за жестами пользователя.
Репозиторий: https://github.com/exyte/SVGView
#ios #swiftui #библиотеки #ui
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Игра «Сапёр» на Jetpack Compose
Старый-добрый «Сапёр» получил новую реализацию на Jetpack Compose. Уровни генерируются случайным образом, но первая выбранная ячейка не может быть миной. Если прохождение покажется слишком лёгким, можно выбрать другие уровни сложности.
Приложение также имеет тёмную и светлую темы, градиентную анимацию ячеек, масштабируемое поле и тактильный отклик.
Репозиторий: https://github.com/JayaSuryaT/minesweeper-j-compose
#android #compose #ui
Старый-добрый «Сапёр» получил новую реализацию на Jetpack Compose. Уровни генерируются случайным образом, но первая выбранная ячейка не может быть миной. Если прохождение покажется слишком лёгким, можно выбрать другие уровни сложности.
Приложение также имеет тёмную и светлую темы, градиентную анимацию ячеек, масштабируемое поле и тактильный отклик.
Репозиторий: https://github.com/JayaSuryaT/minesweeper-j-compose
#android #compose #ui
Как стать тестировщиком Flutter-приложений?
Из статьи вы узнаете, в чём особенности тестирования приложения на Flutter под iOS и Android, а также чем оно отличается от тестирования нативного приложения:
https://tprg.ru/Fi3S
#flutter #тестирование
Из статьи вы узнаете, в чём особенности тестирования приложения на Flutter под iOS и Android, а также чем оно отличается от тестирования нативного приложения:
https://tprg.ru/Fi3S
#flutter #тестирование