iOS.Devs
5.44K subscribers
89 photos
3 videos
1 file
770 links
Всё самое актуальное из мира iOS разработки. По вопросам @suriksarkisyan

При поддержке qonversion.io

Чат: @ios_camp_chat.
Download Telegram
Про defer в Swift, коротко, с пояснением и примерами. Очень надеюсь, что полезно это будет только новичкам, иначе не знаю, как вы до сих пор без этого жили. Штука очень старая и очень полезная 👍
https://www.donnywals.com/what-is-defer-in-swift/
Подробный материал про обработку ошибок в Swift.
Много разных примеров, как это можно реализовать. Речь про вариации catch, конечно 👍
https://sarunw.com/posts/different-ways-to-catch-throwing-errors-in-swift/
Хороший материал про время сборки в Xcode. О том, как следить за этим и почему это важно.
Конечно, тут от автора не обходится без рекламы своей тулзы RocketSim, которая на самом деле прикольная и мы про неё уже постили, но даже если пропустить этот момент, статья действительно полезная.
Из забавного тут есть о том, что еще важно не просто следить за временем билда, понимать просело ли оно в вашем проекте, улучшилось ли с новым Xcode и так далее, но еще важно сравнивать время сборки на вашем девайсе с временем сборки на девайсах коллег. Возможно, купить вам более мощный ноут будет даже выгоднее для компании в плане затрат 😀
https://www.avanderlee.com/xcode/xcode-build-insights-keep-track-of-project-compilation-times/
Через месяц (чуть меньше) будет очередной WWDC и нас ожидают, вероятно, много интересных апдейтов.
Но пока мы ждем WWDC, на днях прошел аналог от Google, который называется Google I/O.
Вряд ли это жизненно необходимая для вас информация, но всё же лишней не будет, так как Apple и Google достаточно давно двигаются совсем рядом и перенимают фичи друг друга.
Так что вот краткий и ёмкий обзор того, что нового показали на Google I/O в этом году.
Будет что сравнивать с WWDC!
Ну и надеемся, что у Apple будет поинтереснее 🤓
P.S. Судя по слухам будет много про AI 🔥
https://qonversion.io/blog/google-play-i-o-2024-updates-for-app-developers/
Базовая штука, аналог которой должен быть у многих, но если вдруг нет или только учитесь, то вот отличный материал про конфигурируемую кнопку в SwiftUI!
То есть просто компонент, который имеет разные состояния и ими легко управлять. Ну и переиспользовать эту кнопку везде по проекту, конечно.
https://www.danijelavrzan.com/posts/2024/05/configurable-button-swiftui
Сборник всех WWDC в одном месте.
3430 сессий. С 2000 года по 2023. Сохраняйте, вдруг когда-нибудь очень захотите посмотреть, что же такого компания Apple показала на WWDC 2001, или 2005, или около того!
Ну или самую первую WWDC 2000 года захотите посмотреть с внуками! 👴
https://nonstrict.eu/wwdcindex/
Снова про архитектуру. На этот раз про MVVM и SwiftUI!
Автор проверенный, а материал достаточно хороший, поэтому было бы неправильно не поделиться.
Для новичков точно будет полезно, главное не забывать, что это не единственное возможное решение и не серебрянная пуля! Но для общего развития надо знать и уметь готовить 👍
https://www.avanderlee.com/swiftui/mvvm-architectural-coding-pattern-to-structure-views/
Очень классный материал про то, как увеличить перфоманс в 100+ раз при использовании эпловского Accelerate framework 😀
Да, я тоже думаю, что заголовок у статьи немного кликбейтный, да и сама статья не для всех приложений. Но тем, кто работает с похожими инструментами в своем приложении (видео/аудио стримы), точно будет полезно.
И на самом деле в статье даже графики есть, где видно, что буст действительно огромный и порядок цифр похож на 100х 👍
Автор достаточно подробно всё расписал и привел различные графики, так что если у вас что-то похожее есть в приложении, то статья обязательна к ознакомлению! 🔥
https://getstream.io/blog/accelerate-framework/
Большой и подробный материал с примерами кода, картинками и объяснениями. Про spacing = nil в SwiftUI и верстку в целом!
https://fatbobman.com/en/posts/spacing-of-swiftui/
Если вы уже полезли копаться в visionOS, то этот материал должен быть для вас полезен.
Подробно про типографию в visionOS, с примерами и красивыми картинками 🔥
https://www.createwithswift.com/understanding-typography-in-visionos/
Если вы всё-таки не оставляете надежду писать backend на Swift-е (🤪), то вот материал для вас!
Очень подробный, с кучей бенчмарков, рассуждений и пояснений!
Автор сравнивает Swift с другими инструментами для бэка. Очень популярными, хотя может и не самыми лучшими в наше время: PHP / Kotlin/Java / JS
Интересно было бы еще сравнение с Go, увидеть, например, но ладно уж 🙂
Стоит еще сказать, что это вряд ли речь про большие нагрузки, но тем не менее.
В общем переходите и смотрите. Много интересного есть 🔥
СПОЙЛЕР: всё не так плохо, как мы могли думать!
https://wadetregaskis.com/swift-sucks-at-web-serving-or-does-it
Если вы пишете свою SDK, или, например, собираете свой проект из модулей, то, возможно, вам будет интересна эта статья!
Про такой модификатор, как @_spi. Что он делает, для чего нужен, и как с его помощью сделать улучшенную API ваших компонентов.
Конечно, аттрибут пока скорее экспериментальный, но может быть скоро ситуация изменится.
В любом случае узнать про него стоит 👍
https://varanios.com/articles/spi-or-how-to-develop-better-apis-in-swift/
Небольшой материал для общего развития. Про то, что происходит со SwiftUI превьюшками и превью контентом во время сборки билда для стора, попадают они туда или нет, и еще немного деталей.
Возможно, кстати, кто-то захочет немного оптимизировать свой код и натыкать проверок после прочтения этого материала 🤔
https://jaredsinclair.com/2024/05/20/preview-content.html
Если вы любитель поиспользовать ChatGPT и попросить его написать за вас код, то вот ловите статью с 5 подсказками, как этот процесс улучшить и как лучше просить ChatGPT сделать необходимую вам задачу! 🤖
https://www.avanderlee.com/swift/chatgpt-code-generation-prompts/
В последнее время (уже достаточно долго) SPM набирает популярность и, честно говоря, он вполне себе неплох, хоть и некоторые вопросы к нему имеются.
Так вот если вдруг хотите добавить в свою SDK поддержку SPM или всё-таки решились разбить проект на модули при помощи всё того же SPM, то ловите хорошую пошаговую инструкцию, как такой package сделать! 👍
https://www.avanderlee.com/swift/creating-swift-package-manager-framework/
Если вы занимаетесь разработкой под macOS и решили попробовать SwiftUI, то с чего-то начинать все-таки нужно. Вот небольшой материал про разные типы Scenes в SwiftUI. Не самый большой и полноценный материал, но про те пункты, которые он затрагивает, описано достаточно подробно и понятно!
https://nilcoalescing.com/blog/ScenesTypesInASwiftUIMacApp/
Про strict concurrency и о том, как макрос @preconcurrency помогает с этим. Понятно объяснено и с примерами 👍
https://www.donnywals.com/preconcurrency-usage-in-swift-explained/
Последняя неделя регистрации на Yandex BDUI Conf! 🎉

22 июня Яндекс проведёт большую конференцию для мобильных разработчиков по BDUI

Вместе со спикерами из Яндекса, Яндекс Маркета, Авито, X5 Tech и ВСК будем разбираться, как с помощью бэкенда сделать красивые и функциональные приложения. В программе:

— 2 трека с докладами: продуктовый и инфраструктурный;
— активности от Яндекс Маркета с подарками;
— экскурсия по офису Яндекса на «Парке культуры»;
— афтерпати с нетворкингом и музыкой.

Зарегистрироваться можно на сайте конференции. Она пройдёт 22 июня в Москве в «Экстрополисе». Если не получится присутствовать очно, присоединяйтесь к нашей трансляции!

До встречи на Yandex BDUI Conf — будет здорово! 👋
Если у вас есть приложение с подписочной моделью монетизации, то наверняка вам нужны А/Б тесты связанные со всем этим 💸
Проверить гипотезу, подсчитать разные метрики, конверсию и так далее.
Вот статья, где рассказывается о том, почему это важно, какие данные трекать в эксперименте и какие гипотезы стоит протестировать 👍
Даже если прямо сейчас вам это не нужно, ознакомиться точно стоит, вы с этим точно столкнетесь в будущем! 😉
https://qonversion.io/blog/beginners-guide-to-paywall-a-b-testing-examples/