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

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

Размещение рекламы: @tanyasanovna
Download Telegram
Релиз Swift 5.10

Главная новость прошлой недели – вышел Swift 5.10. Релиз сосредоточен на допиливании модели многопоточности, которая будет включена по дефолту уже в следующей языковой версии, которой, кстати, будет уже Swift 6.
👍34💅5
Пишем клиент для подсчета средней оценки по версиям

Подробный гайд по тому, как с помощью App Store Connect API и OpenAPI генератора написать клиент, который будет расчитывать среднюю оценку каждой версии вашего приложения.
👍191
Как разрабатывать на Swift под Windows

Ребята из The Browser Company продолжают быть активными адвокатами использования Swift для Windows. В этот раз они рассказывают, как выглядит developer experience разработчиков, которые пишут на Swift не на macOS, а на винде.
💅26👍126
Swift теперь работает на Playdate

Коллаб, который не ждал вообще никто. Playdate – нишевая игровая микроконсоль, главная фича которой – крутящаяся ручка сбоку. Так вот, теперь игры для нее можно писать и на Swift вместо Lua. Отличная возможность для пет-проекта!
73👍19💅1
Рецепты работы со Swift Concurrency

GitHub репозиторий с подборкой паттернов работы с многопоточностью в Swift.

👉Async Context
👉Protocols
👉Isolation
👉Structured Concurrency
👉SwiftUI
👉Libraries not designed for concurrency
👉Interoperability
👍407💅3
Microsoft App Center – все

На главной странице App Center, главной альтернативы Crashlytics, появилось сообщение о том, что в 2025 году сервис будет закрыт. Часть сервисов продолжат существовать отдельно:

👉Build переезжает в Azure Pipelines
👉CodePush предлагают поднимать самим, по запросу выдают сборку
👉Аналитику реализует часть сервисов Azure
💅12👎5👍1
Генерация Swift интерфейсов из Pkl файлов

Помните, что Apple недавно выпустили Pkl, новый конфигурационный язык? Держите статью про то, как с помощью SwiftPM плагина генерировать интерфейсы из Pkl и использовать в своих приложениях.
👍23
Pack Iteration в Swift 6.0

В Swift 6.0 появится фича pack iteration – итератор по элементам туплов. Это стало особенно актуально, потому что, начиная со Swift 5.9, мы больше не ограничены шестью параметрами в туплах.

В статье много примеров того, как pack iteration упрощает жизнь в частых сценариях.
👍25💅5
Разбор 20 пейволлов разных приложений

Если в вашем приложении есть пейволлы, то обязательно посмотрите примеры по ссылке – они могут натолкнуть вас и ваших продактов на новые идеи по их улучшению.
👍311
Релиз библиотеки Time 1.0.0

Dave De Long спустя четыре года разработки выложил первый стабильный релиз библиотеки для работы с датой и временем Time.

Основные фичи:
👉Активно используется система типов, что предохраняет от ошибок.
👉Все значения дат и времени привязываются к конкретному календарю, локали и таймзоне, что тоже уменьшает потенциал для ошибок.
👉Можно создавать часы, которые работают медленнее или быстрее системного времени, что поможет в тестировании.
👉Удобные операции по конвертации, сравнению и сдвигу дат.

🔗GitHub
🔗Swift Package Index
👍32💅6
Новые отчеты в App Store Connect аналитике

В App Store Connect API завезли 50 новых отчетов с сотнями новых метрик. Очень круто, что Apple стали относится к своему API как к first class citizen!
👍16
Отзыв про текущее состояние Swift on Server

Очень клевый подробный отзыв от компании, которая использует Swift для серверной и десктопной разработки, про текущее состояние языка и экосистемы. Вывод – использовать можно, экосистема богаче одидаемого, но простор для доработок еще большой.
👍20
Самые популярные настройки git config

👉pull.ff only или pull.rebase true – защита от случайного создания мердж-коммита при git pull
👉merge.conflictstyle zdiff3 более подробная информация о конфликтах
👉rebase.autosquash true – упрощение использования git squash для слияния разных коммитов друг с другом
👉rebase.autostash true – автоматический stash при git rebase
👉push.default simple, push.default current, push.autoSetupRemote true – автоматический пуш локальной ветки в ремоут
👉rerere.enabled true – автоматическое применение стратегии разрешения конфликтов, которую вы использовали в прошлый раз
20👍1
Автоматическая публикация DocC на GitHub pages

Пример того, как настроить GitHub Actions, чтобы с каждым релизом вашей библиотеки обновленная DocC документация публиковалась на GitHub Pages.
11
Как отвечать на вопрос "Are you a trader?"

После новых регуляций в Европе, Apple начала задавать вопрос про то, являетесь ли вы трейдером, перед загрузкой новых приложений в App Store. Если вы зарабатываете со своих приложений хоть что-то, то на вопрос надо отвечать утвердительно. В статье пошагово разбирается, как предоставить Apple всю требуемую информацию.
👎33👍4
Гайд по миграции на Bazel

Очень подробный гайд по тому, как настроить сборку проекта с помощью Bazel на основе приложения для Mastodon:

👉Описание таргетов
👉Интеграция с Xcode
👉Настройка удаленного кеша
👉Модуляризация
💅23👍42
Как TextView работает под капотом

Лучшая статья прошлой недели. Разбор кучи деталей того, как TextView работает под капотом – начиная с того, как обратываются стили у AttributedString, заканчивая тем, как курсор реагирует на нажатие кнопок на клавиатуре в зависимости от положения в тексте.
36👍7