iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT
12.4K subscribers
654 photos
64 videos
3.95K links
Самые интересные статьи, видео и новости, связанные с iOS разработкой. Не больше трёх материалов в день.

Лучшее iOS сообщество в Телеге: @iosgt

Размещение рекламы: @tanyasanovna
Download Telegram
Два неожиданных факта про отзывы к приложениям:
1️⃣Их количество и оценки значимо влияют на поисковые позиции в сторе.
2️⃣При использовании системного API для предложения оценить приложение, показ алерта не гарантирован – iOS сама решает, показывать его или нет.

Твиттер-тред с деталями.
Мы в канале регулярно вспоминаем Realm, который недавно обрел вторую жизнь, став мультиплатформенным. Несмотря на то, что Core Data закрывает большинство потребностей по работе с данными, Realm прочно держит свою нишу, и иметь свое собственное представление о его работе – очень полезно. Чтобы разобраться в деталях, подключайтесь к воркшопу который проведет Антон Марунько, iOS Team Lead в Kupibilet, где расскажет, как с помощью Realm можно работать с данными в простом приложении и поотвечает на вопросы.

На вебинар стоит заглянуть и тем, кто только планирует вкатываться в iOS разработку. Помимо технической части, на нем поговорят и про актуальность профессии и перспективы в текущей обстановке новых ограничений от Apple.
Вопрос #12 из State of iOS Toolchain 2022. Какие линтеры/форматтеры вы используете для Swift кода?
Anonymous Poll
3%
swift-format
13%
SwiftFormat
76%
SwiftLint
1%
Другое
15%
Не использую
8%
Посмотреть результаты
Bazel – это альтернативная билд система, которая относительно распространена среди Android разработчиков, но засматривается и на iOS. Ее основные плюсы – инкрементальная сборка из коробки и отвязанность от xcodeproj файлов.

Держите туториал по тому, как затащить Bazel в существующий iOS проект, подключить инкрементальную сборку и кеширование скомпилированных модулей.
Практически любую проблему можно решить добавлением в проект еще одной зависимости. Этот подход очень распространен среди JS проектов, но и в iOS им любят злоупотреблять. Но зависимости не даются бесплатно, у них есть своя цена:
📌Сложности с управлением их версиями
📌Необходимость проверять и поддерживать их изменения при апдейте версии
📌Увеличение билд тайма
📌Необходимость закапываться в исходники библиотеки при появлении проблем
📌Влияние на архитектуру проекта
📌Общий рост размера кодовой базы
📌Потенциальные дыры в безопасности
📌Усложнение онбординга новых разработчиков

В статье неплохо раскладываются все эти проблемы. Подойдет, чтобы скинуть вашему коллеге, который в очередной раз затащил в Podfile что-то странное.
Вопрос #14 из State of iOS Toolchain 2022. С какими сетевыми протоколами чаще всего работают ваши приложения?
Anonymous Poll
93%
JSON
6%
XML
11%
Protobuf
3%
Другое
6%
Посмотреть результаты
Как бы вы поступили, если бы вам надо было придумать способ сериализовать AttributedString? Скорее всего, реализовали бы какую-нибудь структуру, в которой ставили бы в соответствие рейнджу символов определенное свойство. И такой подход быстро сломался бы. Про то, почему так произошло бы, и как подходить к такой залаче правильно – в статье.
Иметь стандартизированный подход к определению версий приложений – очень полезно. Это упрощает коммуникации между командами, триаж багов, предсказуемость объема релиза. В статье разбирается несколько подходов к определению версий мобильных приложений.
Админ нашего чата Евгений Елчев, известный многим как Джон Фир, закончил записывать свой бесплатный курс по Dart и Flutter. Все космические 102 урока доступны на Youtube, смотрите их и подписывайтесь на Женю, он крутой!
Apple выкатили детали про то, какие именно приложения подлежат удалению из App Store:
📆Не обновлялись последние три года
🫙За последний год практически не скачивались

На то, чтобы отреагировать на уведомление и обновить приложение, разработчикам будет даваться 90 дней.
Обратите внимание – баги Swift переехали из отдельного багтрекера прямо на GitHub. Искать среди них свою ошибку, воркэраунды и заводить новые тикеты теперь намного проще!
Научись использовать SwiftUI и Backend Driven UI

В Ozon Tech открылся набор на бесплатный курс для iOS-разработчиков

Тебя ждет:
🔹Два месяца онлайн-занятий
🔹Менторство от экспертов и тьюторов
🔹Опыт разработчиков лидирующего e-com с настоящим highload
🔹Офферы в Ozon для лучших выпускников
🔹Вебинары по вторникам и четвергам с 19:00 до 21:00
🔹Воркшопы по субботам с разбором кейсов от экспертов e-com

Как попасть на курс?
Оставь заявку на сайте ➡️ 15 мая пройди отборочный контест ➡️ попади в рейтинг лучших ➡️ развивайся под менторством экспертов Ozon.

Регистрация на курс
⚠️Firebase App Distribution в России – всё

Последнюю неделю подписчики периодически жаловались на то, что в Firebase отваливался App Distribution – нельзя было установить сборки на телефоны с российскими IP. Сегодня количество жалоб на такое поведение в нашем чате выросло еще сильнее. Вот что отвечает саппорт:
“Firebase is available in most countries and regions. However, Firebase restricts access to some of its business services in certain countries or regions. At this time, distribution of pre-release app versions via Firebase App Distribution is restricted in Russia”.

Если у вас есть информация про работоспособность других сервисов Firebase – расскажите в реплаях.
Ежегодный дайджест Swift Server Work Group. Ключевые результаты:
📌Новая concurrency модель облегчит написание серверного кода
📌Улучшился тулинг: поддержка VSCode, скрипты для установки Swift на другие платформы, GitHub Actions
📌Улучшилась документация
📌Подросла экосистема

На следующий год цели такие:
🎯Продолжать растить экосистему
🎯Продолжать работать над многопоточкой
🎯Продолжать улучшать тулинг
🎯Улучшать время сборки
🎯Повышать адопшн

К слову, про адопшн – в самом дайджесте ни слова про текущий уровень, так что не пытайтесь искать.