Telegram Web Link
Как и когда запрашивать ревью на приложение

Тред с обсуждением особенностей работы с requestReview API, которое показывает пользователю предложение оценить приложение. Основная сложность с тем, что разработчик напрямую не управляет появлением этого алерта, равно как и не может узнать, был ли он показан.

👉Примерные бенчмарки количества рейтингов к количеству загрузок: 1.5-2.5%.
👉Конкретных стратегий очень много, но народная мудрость говорит о том, что лучше запрашивать отзыв не сразу на старте приложения, а после завершения целевого действия.
👉Больше всего хвалят показ по сочетанию следующих факторов: 5 запусков приложения, несколько совершенных целевых действий, и хотя бы неделя, прошедшая с первого запуска.
Function Body Macros

В Swift приняли пропозал, добавляющий в систему макросов возможность подменять или аугментировать тело функции. Короче, такой свиззлинг, но в компайл-тайме.

Такая штука открывает кучу возможностей, например:
👉Автоматическое логирование вызова функции и переданных аргументов
👉Превращение обычных функций в RPC
mise – удобный version manager для тулинга

mise – менеджер версий, который позволяет вам централизованно управлять версиями консольных тулов, используемых как локально, так и на CI. Создаете toml файл, определяете там нужные версии, добавляете его в репозиторий проекта – и готово!
Про iOS разработку в Revolut

Обзорная статья про то, как в Revolut организована iOS разработка во всех их приложениях. Интересные факты:

👉Используется Clean Architecture, смешанная с MVVM-C.
👉Приложения побиты на модули, 160 пошарены между всеми проектами, еще 170 в основном приложении.
👉По техстеку: Swift, Bazel, минимум зависимостей от сторонних фреймворков.
👉Всего над их проектами работает 120 айосеров.
👉Регулярно гоняются 150.000 юнит тестов и 3.000 UI тестов.
Get API – новый аналог Postman

Если вы устали от перегруженности Postman фичами, а Insomnia почему-то тоже не подходит, посмотрите на Get API. Основные плюшки:

👉Нативное macOS приложение, не перегруженное фичами и сложным интерфейсом
👉Умеет работать и с REST, и с вебсокетами
👉Не требует заведения учетных записей, работает с GitHub как с источником правды
Swift исполняется 10 лет

10 лет назад на WWDC Apple впервые представили Swift🎉

Расскажите в комментариях про то, что вы подумали про Swift в первое время после анонса!
Финалисты Apple Design Awards 2024

Объявили финалоистов ежегодной предввдцшной премии Apple Design Awards. Из самого интересного:

👉Arc Search получает премию в категории Interaction за перепридумывание мобильного браузера.
👉Crouton, инди-приложение для менеджмента рецептов, тоже награждается за Interaction.
👉Meditate, приложение для медитаций, награждается в Visuals за крутые анимации мандалы на SwiftUI.
👉Copilot Money, премия за инновации, за применение ML для управления личными финансами.
Современный UIKit

PointFree начали серию выпусков, в которых они показывают, как может выглядеть современная разработка на чистом UIKit, без всяких SwiftUI примесей. В качестве примера реализуется экран выбора и настроек Wi-Fi сети.
Not Private APIs

Community-driven документация по некоторым из приватных API.
Генерация DocC документации для нескольких таргетов

У DocC есть ограничение – он генерирует документацию только для одного таргета. Команда PSPDFKit рассказывает, как обойти это ограничение, и с посощью набора скриптов собрать документацию сразу нескольких фреймворков в один архив.
Современный UIKit, часть 2

Продолжение серии выпусков от Pointfree про современную разработку на чистом UIKit. Основной фокус этой части на работе с UICollectionView.

Первая часть вот здесь.
Concurrency в Swift 6

Подробный разбор всех новых языковых фичей в Swift 6, которые связаны с concurrency в формате проблема-решения-ограничения.
На этой неделе будет очень много материалов по мотивам только что прошедшего WWDC, так что готовьтесь! А начнем с конспекта Platforms State of the Union!
Что нового в SwiftUI в iOS 18

👉Создание кастомных коллекций вью, аналогичных List и TabView.
👉Новый Tab-бар, который автоматически с классной анимацией преобразуется в сайдбар и обратно.
👉Новые анимации для переходов между вьюхами.
👉Возможность сдвинуть скролл на конкретную позицию.
👉Макрос Entry, с помощью которого можно быстро задавать разные параметры окружения.
👉Макрос Previewable, с помощью которого можно задавать стейт для превью.
Что нового в UIKit в iOS 18

👉Автоматическое отслеживание изменений trait'ов без необходимости вызова registerForTraitChanges.
👉Новый класс для анимаций UIUpdateLink, более продвинутый аналог CADisplayLink.
👉Новые стили анимаций для SFSymbols.
👉Добавление опций форматирования текста для любого UITextView.
Dark mode app icons

Рекомендации по тому, как адаптировать иконки приложений разной композиции к темному режиму таким образом, чтобы она не выделялась из всех избыточной яркостью, но при этом сохраняла узнаваемость.
Swift переехал в отдельную организацию на GitHub

Swift теперь живет не в организации Apple, а в своей собственной, Swiftlang. Там же будет хоститься стандартная библиотека, компилятор, все корные тулы и библиотеки, и другие проекты, важные для экосистемы. В будущем обещают представить единый процесс добавления в организацию новых проектов и их эволюции, начать использовать GitHub Teams, и улучшать CI для всего.
Почему в Swift медленная проверка типов

В недавнем интервью Крисс Латтнер рассказал, что считает систему тайп-чекинга в Swift неудачной. В статье разбирается, почему в каких-то случаях время проверки типов может расти экспоненциально с повышением сложности выражения.
2025/07/04 20:12:29
Back to Top
HTML Embed Code: