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

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

Размещение рекламы: @tanyasanovna
Download Telegram
Хороший гайд по тому, как стать техническим инфлюенсером. Несколько запомнившихся мыслей:
📌Большинство профессионально успешных людей не заметны в онлайне, не стоит верить своему пузырю.
📌Самая полезная метрика – количество людей, которые обращаются к тебе за советом.
📌Выбирайте самые топовые свои материалы и прорабатывайте для них сертезный план дистрибуции. Каналов получения новых читателей очень много.
📌Вы всегда можете присосаться к чужому каналу дистрибуции – например, написав гостевой блогпост (я тоже, если что, с радостью выложу ваши статьи)
Apple начали рассылать некоторым разработчикам письма с уведомлением о том, что их приложения будут сняты с публикации через 30 дней из-за того, что они не обновлялись продолжительное время. Какой именно срок становится триггером – пока неизвестно, но в примерах говорят про два года.
Когда вам нужно проиграть звук в приложении, самый простой вариант – создать инстанс AVAudioPlayer с нужным url и использовать его. Но в большинстве случаев стоит подумать над тем, как проигрываемый звук должен синхронизироваться с контекстом. Например, останавливать музыку в других приложениях, пока ваше проигрывание не закончится. В этом помогает AVAudioSession, разные режимы работы которого разбираются в этой статье.
Координаторы устарели. Да здравствуют Навигаторы! Автор статьи описывает свой подход к реализации навигации в приложении: типобезопасный, отделяемый от бизнес-логики, позволяющий легко расширять архитектуру. Если найдете отличия от координаторов, дайте знать.
MockingKit – это Swift библиотека для создания удобных динамических моков протоколов и классов. В отличие от моков, создаваемых вручную, в этом случае не придется реализовывать внутреннюю логику руками. Моки автоматически будут записывать, кто и сколько раз к ним обратился, и какую информацию передал.
Environment в SwiftUI работает как словарь, в котором каждому ключу соответствует определенный тип данных. Например, isEnabled гарантированно содержит Boolean, а font Optional<Font>. Держите Gist с реализацией аналогичной структуры данных, и статью про особенности ее использования.
Любое приложение, которое делает https запросы, спамит в консоль логами вида [boringssl] boringssl_metrics_log_metric_block_invoke(151) Failed to log metrics. Автор статьи раскапывает причину их появления с помощью дизассемблера и находит способ, как их можно заглушить.
SwiftNIO в ближайшем релизе дропают поддержку CocoaPods, с рекомендацией всем пользователям переходить на SPM. Основная причина – релиз в CocoaPods довольно трудоемкий, требует поддержки кучи podspec и постоянного разбора проблем подов. Кажется, первая ласточка того, что использование библиотеками CocoaPods будет постепенно снижаться.
Интересный кейс поэтапной проработки архитектуры SwiftUI приложения со сложным лэйаутом из нескольких таблиц, данные которых зависят друг от друга.
Два неожиданных факта про отзывы к приложениям:
1️⃣Их количество и оценки значимо влияют на поисковые позиции в сторе.
2️⃣При использовании системного API для предложения оценить приложение, показ алерта не гарантирован – iOS сама решает, показывать его или нет.

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

На вебинар стоит заглянуть и тем, кто только планирует вкатываться в iOS разработку. Помимо технической части, на нем поговорят и про актуальность профессии и перспективы в текущей обстановке новых ограничений от Apple.