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

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

Размещение рекламы: @tanyasanovna
Download Telegram
swift-outdated – пакет для отображения устаревших зависимостей

swift-outdated при запуске проверяет, у каких из зависимостей проекта появились новые версии, и выводит табличку с ними. Если добавить его как билд фазу в проект, то устаревшие зависимости будут отображаться как ворнинги.
👍20👎121
String Catalog в Xcode 15

В Xcode 15 появился новый способ управления локализованными строчками – String Catalog. При сборке проекта Xcode собирает все локализованные строки в одну таблицу, из которой вы можете редактировать ключи, значения и комментарии к ним.

Таблицы можно переводить на другие языки, при этом Xcode превращается в таск-менеджер на минималках: отображает общий прогресс перевода, дает возможность выставлять статус перевода у каждой из строк.

Здесь же можно настраивать плюрализацию и даже разное значение строк в зависимости от девайса, на котором запускается приложение.
👍46🔥173
Swift AST Explorer – инструмент для тех, кто хочет писать макросы

Если вы хотите научиться писать макросы, вам важно понимать, как выглядит AST вашего кода. Swift AST Explorer умеет парсить любой Swift код в AST и показывать разную статистику и метаинформацию.
👍38😱4🔥3
Выпуск PointFree про тестирование асинхронного кода

Тестировать асинхронный код встроенными средствами Swift и Xcode – сложно. В новом выпуске PointFree разбираются с костылями, нужными, чтобы протестировать код, в котором есть несколько отдельных асинхронных шагов.
🔥154
SwiftUI Index

SwiftUI Index – сервис, который трекает добавление новых API, вьюх и модификаторов в каждой версии SwiftUI.
🔥275👍2
Подробный разбор Observation

На WWDC Apple окончательно закопали Combine, и предложили при работе со SwiftUI использовать вместо него новый фреймворк Observation. В статье разбирается, чем же он лучше Combine, как с ним работать, и какие ограничения уже заметны.
🤡47👍4👎1
Trailing label TextField в SwiftUI

Бывают кейсы, когда в TextField вам надо отображать не только введенный пользователем текст, но и какой-то суффикс. Например, автоматически добавлять домен почтового ящика при вводе логина. В короткой статье разбирается несколько трюков, которые помогут сверстать такую вьюху.
25
Серия статей про CloudKit

Очень подробный цикл про все аспекты работы с CloudKit – начиная от общих концепций, заканчивая обработкой сложных кейсов изменений стейта.
👍17🔥5
Как работают mergeable libraries

В Xcode 15 появился новый тип библиотек – mergeable libraries. Они оптимизированы одновременно под то, чтобы размер приложения и время билда не увеличивались, и под то, чтобы не росло время запуска приложения. Короче говоря, совмещают в себе все лучшее от static libraries и dynamic frameworks.

В статье разбирается, как именно они работают и как их можно использовать в многомодульном проекте.
🔥27
Проигрывание gif в SwiftUI

В SwiftUI добавили новую функцию CGAnimateImageAtURLWithBlock, с помощью которой можно легко запускать анимированные гифки.

С ними связана и новая настройка accessibility, которая позволяет отключать анимированные изображения. Поэтому, если будете их реализовывать, не забывайте подписываться на AXAnimatedImagesEnabledDidChangeNotification и проверять AXAnimatedImagesEnabled перед проигрыванием гифок.
😁16👍9😱1
История миграции библиотеки из CocoaPods на SwiftPM

Разработчики ETTrace рассказывают, как они добавляли поддержку SwiftPM, и что она им дала.

Основной плюс переезда – конфигурация билда проекта стала проще, так как вместо xcodeproj используется простой Package.swift.

Из встреченных проблем:

- Много мелких багов в SPM
- Если зависимость не поддерживает SPM, приходится ее форкать и добавлять поддержку самостоятельно
- Пришлось рефакторить проект, чтобы Swift и ObjC код не были в одном таргете
👍84
Какие приложения были первыми в App Store

Ребята собирают список 500 первых приложений и игр, появившихся в App Store. Пока получилось найти следы только 130 из них. Идеально для тех, кто хочет поностальгировать по старым временам.
👍12🫡73
SwiftUI Data Flow 2023

Системный разбор всех способов организации работы со стейтом в SwiftUI с учетом новинок последней WWDC.

👉Код на GitHub
🔥25👍31🥰1
Отслеживание переключателя тихого режима

Бесшумный режим в iOS не распространяется автоматически на проигрывание медиа. Поэтому Instagram умеет детектить включенность этого режима и глушить звук, если нужно. Проблема в том, что задокументированного API для этого нет. Самый известный воркэраунд – проиграть звук, и, если коллбэк о его окончании придет сразу же, считать бесшумный режим включенным.

Автор статьи пошел дальше и раскопал, на какое системное событие надо подписаться, чтобы "честно" узнавать о бесшумном режиме, и выпустил обертку, которую можно использовать и в ваших проектах.
🔥598👍3🎉1
Программировали, программировали и переросли свои задачи?

Работайте над масштабными ИТ-проектами в Тинькофф. Здесь тимлид хороший и задачи интересные. А работать можно прямо там, где живете: у Тинькофф есть ИТ-хабы в 25 городах России, в Беларуси, Армении и Казахстане.
Вакансии тут: https://u.tinkoff.ru/it-prof.2023
🤡51👍8👎4🤬2
Что видят пользователи неподдерживаемых версий OS в App Store

Когда вы предложите своему продакту дропнуть поддержку старых версий iOS, он скорее всего спросит, как именно будет выглядеть опыт тех, кто на них все еще сидит. По ссылке собрали скриншоты и ответы на другие частые вопросы.
👍517🔥6
Apple Push Notifications Console

Apple выпустили новый сервис для тестирования push уведомлений. С его помощью можно отправлять тестовые пуши с любым пэйлоадом на конкретные девайсы, видеть детальные логи процесса доставки, проверять ваши токены.
🔥137👍14🤡3💅2
Разбор новых фичей Figma

👉Переменные, которые могут представлять цвета, размеры, эффекты, типографику и локализованные строки.
👉Новые настройки автолейаута, с помощью которых можно прямо в Figma делать адаптивный дизайн.
👉Новый Developer Mode, который позволяет готовить экраны для передачи их разработчикам.
👉Песочница компонентов, в которой дизайнер может легко переключать разные настройки экспортируемых компонентов и смотреть, как они себя ведут в граничных состояниях.
👉Поддержка в VSCode для работы с макетом прямо в IDE.
👉Плагины для экспорта дизайна в код на любом фреймворке.
💅20🔥6🤡4👍1