iOS Такой 🍏
3.41K subscribers
417 photos
10 videos
2 files
300 links
IT | Подкасты | Apple | iOS Материалы | Swift

Реклама: @new_repository

Тёплый чат: https://t.me/+tzWmsOMTPpFjMzAy

Бусти: boosty.to/dimov_ios
Download Telegram
SwiftUI Совет

Используйте .safeAreaInset(), чтобы закрепить важные кнопки, например «Продолжить» на экранах оплаты, внизу, позволяя основному контенту прокручиваться.
Купим ваше приложение 📱📱

@cat_apps - проект одной из старейших команд в СНГ по мобильному рынку.

📢Хочешь выгодно и быстро продать приложение? Мы знаем как это сделать, пиши нам в поддержку. Либо выкупим сами, либо оперативно найдем покупателя в нашем комьюнити.

🛒 Выкупаем приложения и игры (iOS, Android) с доходом и без. Рекламная и подписочная модели монетизации.

🔍 Ищешь определенный проект? Напиши в поддержку свои пожелания и мы найдем приложение под твой запрос.

🔒 Гарантируем безопасность всех сделок!

👉 Подписывайся и следи за обновлениями
Что сейчас действительно важно для iOS-разработчиков?

SwiftUI уже в продакшене, но есть проблемы: тестирование, миграция, архитектура и интеграция с UIKit.

Разобраться с этими вопросами поможет Podlodka iOS Crew — профильная онлайн-конференция, новый сезон которой посвящен SwiftUI.

31 марта - 4 апреля разработчики из бигтеха и стартапов расскажут:

Как перестроить мышление с UIKit на SwiftUI (Тёма Пстыго, Авито) 🎨

Какие секреты скрывает SwiftUI под капотом (Александр Скворцов, Яндекс) 🔧

Как внедрять SwiftUI в проекты с 7 млн пользователей (Роман Мирзоян, George Labs) 📊

Какие подводные камни ждут, если минимальный таргет — iOS 14 (Борис Добрецов, Optima Bank) 🏦

Подключайтесь и получайте только применимые знания: https://podlodka.io/ioscrew
Совет по SwiftUI

Начиная с iOS 17.0, вы можете предотвратить обрезку содержимого в ScrollView, используя модификатор scrollClipDisabled().
Совет по SwiftUI

Используйте модификатор position(), чтобы разместить представление в определенных координатах внутри родительского.
Устроиться мобильным разработчиком в Яндекс за выходные

12–13 апреля проводим Weekend Offer Mobile . До 9 апреля оставьте заявку на участие, 12 апреля пройдите технические собеседования, а 13 апреля познакомьтесь с командами и получите офер.

В мероприятии участвует 7 команд: Алиса и Умные устройства, Карты и Навигатор, Авто.ру, Недвижимость, Путешествия, Аренда, Рекламные технологии. Вы сможете пообщаться с менеджерами и выбрать проект, который покажется самым интересным.

Узнать подробности и зарегистрироваться можно здесь.
Разделяемый координатор в 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, и о котором многие разработчики никогда не слышали.