Telegram Group Search
Разделяемый координатор в SwiftUI

Использование координатора совместно с NavigationStack является общепризнанной практикой на протяжении последних двух лет - быстро, удобно, надежно. Однако, в том случае если выбор конечных точек пути описывается перечислением, то по мере роста размеров проекта, начинает разрастаться и класс координатора.

Пока количество конечных экранов приложения находится в пределах пяти десятков – это не является проблемой, поскольку Pascal / Camel / Snake нотация легко секционирует группы экранов. Но на долгих проектах количество экранов переваливает за 2-3 сотни, и, в этом случае, перечисления на несколько сот строк становятся катастрофой. Особенно, тогда, когда над проектом работает команда разработчиков.

Более подробно в статье
Доля рынка версий iOS в 2025 году

На этой диаграмме показаны основные версии операционной системы iOS за каждую неделю в прошлом году. Значения указаны в процентах.

Для целей этого исследования iOS также включает в себя iPadOS, поэтому эти данные относятся как к iPad, так и к iPhone. Однако другие ответвления iOS, такие как tvOS или watchOS, не включены в эту диаграмму.

Вот некоторые интересные наблюдения:

- После выпуска в сентябре 2024 года iOS 18 стала версией с самой высокой долей пользователей. В конце февраля 2025 года она составляла 79,54%
- По состоянию на конец августа 2024 года iOS 17 была самой популярной версией с долей 87,70%. По состоянию на конец февраля 2025 года она опустилась до 13,68%.
Размещение UI-компонентов в пределах отступов Safe Area

Безопасная область (safe area) — это часть экрана, которую не загораживают элементы системного UI, такие как строка состояния, панель навигации, динамический остров и пр.

По умолчанию SwiftUI гарантирует, что представления будут размещены в этой безопасной области, чтобы сохранить видимость и доступность. Однако бывают случаи, когда разработчикам требуется больше контроля над тем, как представления взаимодействуют с этими границами.
Совет по SwiftUI

Скрытие строки состояния и индикатора дома.
SwiftUI. Навигация по строке в разделяемом координаторе

Для атомарного перемещения внутрь иерархии вложенных вью весьма удобно, и, главное, просто использовать путь в виде строки. К примеру, строка вида «/auth/a//b/c/profile/a/c» открывает экран «c» в иерархии экранов «profile», что позволяет откатываться назад по «back» аж до самого корня, проходя через каждый экран. А легкое изменение строки на «/profile/c» откроет только нужный экран без остальных степеней вложенности.

Подробнее в статье
Как правильно организовать проект c модульной архитектурой в iOS-разработке

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

В этом материале вы посмотрите ключевые моменты модульной архитектуры в iOS-приложениях, инструментах для ее внедрения и применения в проектах.
Совет по SwiftUI

Используйте .redacted(reason: .placeholder), чтобы показать заглушку (временное представление), пока ваш контент загружается.
Совет по SwiftUI

Используй .compositingGroup(), чтобы объединить несколько вью в одну композиционную группу. Это позволяет применять эффекты, такие как blur или opacity, ко всей группе как к единому слою.
Совет по SwiftUI

Легко добавляйте действия при свайпе для строк в List, используя модификатор swipeActions()

Также можно указать направление свайпа с помощью параметра edge.
🔥 Профессиональная
конференция разработчиков мобильных приложений 🔥

AppsConf возвращается и пройдет 3 июня в Москве.

Расскажем про:

📌Полный комплекс AI-инструментов для ускорения прототипирования и улучшения скорости и качества работы
📌Плюсы и минусы BDUI для ускорения time-to-market
📌Стратегии миграции на современные фреймворки
📌Плюсы и минусы open source в мобильной разработке
📌Как мобильному разработчику выстроить отношения со смежными отделами

Здесь не говорят о «трендах» — здесь показывают, как внедрить Ai, почему BDUI хорош, как убить техдолг и запустить виджет без депрессии.
На конференции увидите, как релизят Zen, делают ARR на лету и внедряют Federated Learning. Прокачаете софт-скиллы, узнаешь про Kotlin Compiler Plugin и поймёте, зачем вам геометрия.

Единственная конференция по мобилке с максимальным упором на практическую работу: 4 воркшопа, 3 круглых стола, live-coding, нетворкинг-столы с мини-консультациями от экспертов.

А еще афтепати, нетворкинг с коллегами по цеху – отличная возможность обменяться опытом и завести полезные знакомства.

Полная информация и доклады на сайте.

А по промокоду "ios_prog" вас ждем приятная скидка 5%.
Приходите, будет круто! Увидимся на AppsConf Х 2025!
Please open Telegram to view this post
VIEW IN TELEGRAM
Отлаживаем приложение вместе со SwiftUI Instruments

Использовать их, как минимум, интересно. А на новых проектах — ещё и довольно просто. Инструменты помогут лучше понимать SwiftUI.

А ещё SwiftUI Instruments можно использовать для проверки себя — они помогут понять, оптимально ли мы используем подписки. Ведь часто на UI достаточно перерисовать один блок, а не весь экран.

На больших проектах можно использовать инструменты для проведения рефакторинга, хотя, конечно, он может оказаться очень дорогим для внедрения и тестирования. Или для проверки добавления новой логики или фич — чтобы не сделать проект ещё более тяжёлым.
SwiftUI совет

Примените размытие фона для модального окна с помощью модификатора .presentationBackground()

iOS 16.4+
Совет по SwiftUI

Чтобы применить пользовательский фон к List, сначала скройте фон по умолчанию с помощью .scrollContentBackground(.hidden).

iOS 16.0
С днём Победы! 1941-1945. Никто не забыт! Ничто не забыто!
Как одна строчка кода может сломать ваш iPhone

Это история о том, как ребята нашли одну из уязвимостей в iOS. Она стала одной из моих любимых из-за того, насколько просто было реализовать эксплойт для нее. Кроме того, она использует устаревший публичный API, который до сих пор используется во многих компонентах операционных систем Apple, и о котором многие разработчики никогда не слышали.
Обсуждем кейсы на митапе Яндекса по мобильной разработке

Я.Субботник — большой митап для мобильных разработчиков. В этот раз кроме докладов участников ждёт практический разрбор кейсов на PeerLab.

PeerLab — камерная встреча с экспертами Яндекса. Для неё мы отобрали актуальные темы из разработки и карьеры. Предложить кейс для обсуждения может каждый участник — приносите их в форму регистрации и приходите на обсуждение!

В Москве точно обсудим:

🔸Kotlin Multiplatform
🔸Карьерное развитие
🔸Платформенные команды
🔸AI в разработке

А в Питере:

T-Shape разработчик
🔸Тестирование
🔸AI в разработке

➡️ Регистрируйтесь и ищите список экспертов-участников дискуссии на сайте
Please open Telegram to view this post
VIEW IN TELEGRAM
SwiftUI совет

Вы можете управлять размером Spacer, используя .frame()

Это полезно, когда требуется точное расстояние между представлениями, вместо использования гибкого пространства.
🚀 Как получать выплаты из-за рубежа в РФ без лишних хлопот?

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

💡 Что делать в такой ситуации?

Есть простое и выгодное решение! Платежный сервис Salary.cab позволяет русскоязычным исполнителям получать выплаты от зарубежных заказчиков с минимальной комиссией от 2% (для СМЗ — 4%).

Почему выбирают Salary.cab:

🔒 Полное соответствие международным финансовым требованиям — защита бизнеса и ваших доходов.
⚡️ Быстрое проведение транзакций — до 48 часов в рабочие дни, обычно занимает всего 1-2 часа.
📄 Полная документация по каждой выплате — контроль и прозрачность на каждом этапе.
🛡 Гарантированная безопасность всех транзакций и данных.

👉 Узнайте больше о выгодных условиях и начните получать выплаты уже сейчас: https://clck.ru/3M6Ax2

Реклама. Снджоян Расул Азоевич. ИНН: 614100383290. Erid: 2VtzqwAqkNp
SwiftUI Совет

Управляйте размером кругового ProgressView с помощью модификатора .controlSize().
Apple Watch и Apple TV получат серьезные изменения в дизайне на WWDC наряду с iOS 19

Как сообщает Марк Гурман из Bloomberg, компания Apple готовится к масштабным анонсам на WWDC, которая стартует 9 июня.

Мы уже слышали о значительном обновлении дизайна iOS 19 для iPhone и iPad, а также об обновлении дизайна macOS 16. Однако, как оказалось, амбиции Apple еще шире. В последнем выпуске своей рассылки Power On Гурман утверждает, что watchOS и tvOS также подвергнутся существенному редизайну, а visionOS получит некоторые изменения.

Это означает, что новый современный язык дизайна Apple затронет все программные платформы для ее устройств. Apple стремится к определенной последовательности и унификации всех своих операционных систем. Пользователи могут ожидать более широкого использования прозрачных и стеклоподобных материалов, изменения иерархии навигации внутри приложений, новые иконки и многое другое.

На некоторые из них намекает иллюстрация к WWDC, на которой изображена стеклянная, отражающая 3D-икона радужной сцены Apple Park. Вероятно, можно будет увидеть те же оттенки полупрозрачности и стеклянные элементы в операционных системах.

В то время как программное обеспечение Apple Watch обновлялось несколько раз, операционная система для Apple TV оставалась относительно неизменной с момента ее появления в 2015 году. Сейчас tvOS также довольно сильно отличается от визуального языка дизайна, используемого в iOS. Похоже, что ситуация может измениться, так как внешний вид всех платформ будет сближен в ходе крупнейшего визуального обновления Apple OS со времен iOS 7.

Ожидается, что большая часть редизайна будет вдохновлена визуальным стилем, представленным в visionOS в Apple Vision Pro в прошлом году. Однако, по словам Гурмана, даже в этом случае будут внесены некоторые «коррективы» в пользовательский интерфейс, поскольку Apple стремится к гармонии дизайна на всех своих платформах.

Официально все это будет представлено через две недели.
2025/05/29 00:28:02
Back to Top
HTML Embed Code: