К моему удивлению, не все знают что в AppStore есть возможность несколько раз в год "пройти вне очереди" и запросить ускоренное ревью. Это возможно в случае:
Это может оказаться вам актуальным в предверии самого загруженного сезона в App Store. В период с 22 по 27 декабря рассмотрение занимает сильно больше времени
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Apple добавила параметр
isEnabled
в .accessibilityLabel
, .accessibilityInputLabels
, .accessibilityValue
, .accessibilityHint
и другим модификаторам доступности. В результате модификатор применяется только в том случае, если параметр IsEnabled имеет значение true.Это может оказаться полезным в ситуациях, когда вам нужно условно переопределить режим доступности по-умолчанию.
Небольшое, но полезное улучшение для работы с доступностью
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Очень необычная и глубокая статья. Автор статьи демонстрирует, как перенести реактивный Combine код на AsyncAlgorithms. Что приятно, автор разбирается в реактивном программировании и любит Combine, от этого статья раскрывается с интересной стороны. В самом начале автор знакомит нас с демо-проектом, написанным на Combine с классическими задачами, легко решаемыми Combine: инкремент бейджа из разных источников, отображение прогресса, работа с сетью. После чего начинает шаг за шагом внедрять Асинхронные алгоритмы:
Проблемы с AsyncChannel
Преимущества AsyncAlgorithms
Я не могу согласиться с выводами автора. Действительно, он смог показать альтернативу Combine, для разработчиков, знакомых с Swift Concurrency, но:
После изучения статьи я смог найти кейсы использования AsyncAlgorithms в своих повседневных задачах, но мигрировать на него с Combine не вижу смысла, а вы?
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
Хочется в эту пятницу немного с вами похолливарить на тему развития Swift как языка, для этого нашел стаью, которая неплохо описывает развитие Swift как языка и его текущие эволюционные проблемы.
История Swift
Управление языками программирования
Python: Доброжелательный пожизненный диктатор
Rust: Управляемый сообществом продукт с открытым исходным кодом
Kotlin: Поддержка корпорации проекта с открытым исходным кодом
Стимулы в управлении языками программирования
Swift: Пожизненный корпоративный диктатор
Приоритеты и задержки в Swift
Философия дизайна Криса Латтнера
Проблемы с управлением и сообществом
Технический долг и компиляторы
Apple и Swift
Надежда на будущее Swift
Лично я очень люблю Swift и радуюсь его развитию и внедрению всего нового, ведь не обязательно использовать все. Но и разделяю мнение что мы все дальше уходим от концепции простого языка с понятными конструкциями. Что вы думаете по этому поводу?
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👏14
Есть множество сценариев, в которых требуется изменять содержимое экрана или реагировать на попытку сделать скриншот экрана. Если в UIKit с этим все разобрались, то про SwiftUI многие забывают. В статье разбирается SwiftUI модификатор, интегрированный с UIKit, для скрытия контента во время создания снимков экрана
hideWithScreenshot
будет создан на основе UITextField
с isSecureTextEntry
для скрытия содержимогоPlease open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6
iOS Broadcast
Очень интересный пример, почему Combine актуален даже в мире Swift Concurrency. При миграции на Swift 6 включаются проверки на потенциальные проблемы с многопоточностью и работа с NotificationCenter требует обеспечения явной потокобезопасности. Эту ошибку легко исправить с Combine, интеграция с NotificationCenter у которого давно реализована:
🔵 Объединяем 3 паблишера в один поток данных
🔵 Явно указываем что хотим получать ивенты в главном потоке
🔵 Не забываем про то что assign захватывает сильной ссылкой и либо добавляем
Publishers.MergeMany
receive(on: DispatchQueue.main)
[weak self]
либо вспомогательную функцию weakAssign
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍1
Опубликовали записи с конференции SwiftConnection, мой топ 8:
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍5❤1