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

Регистрация в РКН: https://gosuslugi.ru/snet/67b464d698a28c4e866d827a

Размещение рекламы: @tanyasanovna
Download Telegram
Apple на App Review:
«У вас в приложении есть SafariViewController, а значит вы можете показывать любой контент, ставьте 17+ приложению»

Тоже Apple:
😁157💩12🔥7👍2
Удобный сервис для того, чтобы вспомнить размеры экрана и различных UI элементов для любого устройства от Apple.
👍38
Бывает, что при работе со SwiftUI начинает постоянно появляться сообщение «Automatic preview updating paused». В статье разбирается, откуда появляется эта ошибка, и как от нее избавиться.
💩8
История рефакторинга старого приложения Uber длиною в год. Автор честно рассказывает про накопившийся к тому моменту техдолг, неудачные попытки рефакторинга и компромиссы, вызванные принятыми архитектурными решениями.
👍15
Разбор логики того, как в SwiftUI происходит управление жизненным циклом View и привязанного к ним стейта. Особенно интересно там все работает у списков.
👍242🔥2
Продолжим погружаться в проблемы больших команд мобильной разработки. Ребята из Lyft рассказывают, как у них организован мобильный CI. Из интересного:
📌Вся конфигурация CI описывается в вендоронезависимом конфиге
📌Промежуточная абстракция позволяет на каждый коммит дергать разных агентов и разных провайдеров CI
📌Все живет на self-hosted машинах
📌Список задач, которые надо дернуть для каждого PR, генерируется на лету после анализа содержимого PR
🤯6👍2
Я уже выкладывал новый инструмент для построения связей между модулями от Миши Рубанова из Додо. И тем, кто попробовал, и тем, кто не стал, рекомендую прочитать его новую статью про то, с какими проблемами он столкнулся при разработке. Супер вдохновляющая история для всех, кто подумывает сделать свой пет-проект.
👍203🥰3
Тикеты с багами в Swift переезжают из Jira на GitHub! Если вы когда-нибудь репортили проблемы в bugs.swift.org, то вам надо донастроить свой профиль, чтобы автомиграция на GitHub сработала нормально:
1️⃣До 7 апреля в своем профиле в Jira указать имя пользователя на GitHub
2️⃣До 18 апреля принять приглашение во временную организацию на GitHub swift-issues-migration.
👍4🎉4
Появилась новая ежемесячная email-рассылка, в которой будет подбиваться текущий статус разработки Swift: ключевые пропозалы, обсуждения и анонсы. Помимо ссылок, автор пытается простым языком объяснить смысл всех изменений и примерно предсказать, когда они докатятся до пользователя.
👍18😁1
Меня попросили пошарить опрос про то, планируют ли мобильные разработчики уезжать из России, и по каким параметрам они выбирают работу. Результаты выложу отдельно.

И да, я помню про свое ежегодное исследование мобильщиков. Оно будет, но позже.
💩25👍22🤔2😁1
Вечерний холивар объявляется открытым! Каждый экран в приложении должен быть завернут в ScrollView, вне зависимости от выполняемой им функции. Вот почему:
⌨️Проще обрабатывать событие появления клавиатуры
📏Вы готовы к любому размеру экрана новых девайсов Apple
🔎Сможете легко поддерживать Dynamic Type
👍31😁12👎2💩1
Вышел Tuist 3.0 – инструмент, заменяющий сложные проектные файлы Xcode на простой конфиг на Swift. Из важных новых штук:
📌Плагины с поддержкой сторонних зависимостей (например, в плагин для линтинга можно легко подключить SwiftLint)
📌Возможность декларировать SPM зависимости проекта в отдельном файле Dependencies.swift, и работать с ними без использования Xcode
📌Распределенный билд кэш Tuist Cloud, который будет подтягивать ранее скомпилированные модули на компьютеры ваших коллег
🔥30👍12👏1
@MainActor – это аннотация, которая подсказывает компилятору, что определенный код будет всегда выполняться на мейн треде. Но в итоге это не всегда так, и иногда этот код в итоге исполняется в бэкграунде. В статье рассказывается, почему это так, и как можно обойти такое поведение.
👍18
Если вы планируете каким-то образом автоматизировать работу с App Store Connect, держите классную библиотеку. Самое классное в ней то, что она перегенерируется автоматически каждый раз, когда спецификация Connect API изменяется.
👍12
Telegram регулярно проводит конкурсы среди мобильных разработчиков и нанимает к себе их победителей. На одном из последних нужно было написать кроссплатформенный модуль на С++ для корректировки внешности. Разработчик, занявший третье место, рассказывает про свой код и результаты.
🔥15👏3👎2👍1