Telegram Web Link
Я уже не один раз делился материалами про Swift Concurrency. В том числе и видео с WWDC 🎥
И я надеюсь, что базовые сценарии все уже разобрали и понимают как использовать, поэтому вот материал про не самые частые в работе кейсы, но очень важные. И когда такая задача появляется, важно сделать её максимально правильно.
Я про одновременную обработку N-ного количества запросов, либо с ожиданием друг друга, либо с полной параллельностью и обработкой одного ответа для всех. И про проблемы, которые могут возникнуть в процессе.
В общем это всякие загрузки картинок, отправка пачки запросов на сервер и так далее.
Материал полностью покрывает эту тему и помогает подобрать нужное решение. Ну или провалидировать всё ли у вас правильно реализовано 🔥
https://developer.apple.com/videos/play/wwdc2021/10134
Наверное, не все знают, но на симуляторе можно сделать запись экрана. Например, чтобы сделать классную превьюшку для стора, где пройдетесь по основным фичам вашего приложения.
Но еще это видео должно соответствовать некоторым требованиям Apple. По длине и прочему.
Вот небольшой материал про это, где показывается, как это сделать и также, при помощи RocketSim (много постов про неё было) оптимизируется под требования Apple. Например, корректирует аудио дорожку, устанавливает правильное разрешение и так далее.
В общем в некоторых (наверное, достаточно редких, но всё же) случаях может быть полезно.
https://www.avanderlee.com/workflow/capture-ios-simulator-video-app-preview/
Если вы еще не переехали на async/await, то, наверняка, используете completion блоки.
Вот материал о том, как сделать эти блоки намного безопаснее! Внутри есть и видео материал, если вам так удобнее 👍
https://www.swiftwithvincent.com/blog/how-to-make-a-completionhandler-much-safer
Если вы используете Swift Concurrency, то наверняка приходится (или еще придется) работать с Actors.
Вот материал про то, какие проблемы с ними могут быть и про небольшие фикши по работе с Actors!
https://alexdremov.me/swift-actors-common-problems-and-tips/
Возможно, многие уже знают или хотя бы что-то слышали про Copilot. Это такая тулза, которая при помощи AI помогает вам писать код. То есть дает готовые куски, помогает дописать и так далее. За качество этого кода ничего сказать не могу, но многим вроде как нравится.
Если вдруг хотите интегрировать себе эту штуку (может хотя бы попробовать и немного побаловаться) в iOS проект, то вот подробная статья о том, как это сделать!
https://medium.com/globant/boost-your-productivity-integrate-github-copilot-with-xcode-94a0ee74b961
Знаете ли вы, что такое @ScaledMetric? Даже если да, думаю этот материал будет полезен и вам.
Тут и объяснение зачем нужен этот модификатор и сразу примеры использования с результатом 👍
https://www.avanderlee.com/swiftui/scaledmetric-dynamic-type-support/
Держите совсем уникальный материал. Про новый язык для конфигураций и конфиг файлов - Pkl (Pickle)!
Альтернатива всяким JSON, YAML и прочим.
Авторы говорят, что предыдщуие форматы не очень удобны, много где можно ошибиться, много копипасты приходится писать и так далее.
И предлагают альтернативу. А в статье подробно об этом рассказывают, хвалят и показывают.
Пока непонятно, конечно, сможет ли Pkl занять нишу, но выглядит все равно интересно 👍
https://pkl-lang.org/blog/introducing-pkl.html
Всем, кто изучает SwiftUI будет очень полезно разобраться в одной из основных тем - Alignment. То есть всякие основы верстки и выравнивания компонентов.
Вот хороший материал с коротеньким текстовым описанием и большим видео-материалом с примерами кода и результата! Рекомендую посмотреть видео 🔥
https://www.hackingwithswift.com/books/ios-swiftui/alignment-and-alignment-guides
Очень (прямо очень) крутой ресурс по тому, как работает верстка в SwiftUI!
Сайт с разным набором штук связанных с версткой в SwiftUI, где можно зайти и на конкретном примере посмотреть код и результат работы. Подвигать ползунки, посмотреть, как меняется верстка и так далее.
Выглядит очень классно и ресурс дальше развивается, так что следите за обновлениями! 🔥
https://www.swiftuifieldguide.com/
Если задумываетесь о добавлении в ваш проект нормальной системы логирования происходящего, то вот хороший материал про эпловский фреймворк OSLog!
В целом статья без каких-то уникальных находок. Просто обзор инструмента с примерами использования 👍
https://useyourloaf.com/blog/xcode-console-and-unified-logging/
Небольшой обучающий материал (с большим количеством примеров) для совсем новичков о том, что такое Extensions и как с ними работать, в каких случаях они подходят лучше всего и так далее.
https://www.avanderlee.com/swift/extensions/
Хорошая статья о том, как работать с типизированными ошибками в Swift, когда вы используете throw и разный набор ошибок.
Возможно, у вас есть опыт работы с таким подходом в других языках и вы ничего нового не найдете, но если нет, то материал точно будет полезным. А еще он совсем коротенький, очень понятный и полезный 👍
https://www.donnywals.com/designing-apis-with-typed-throws-in-swift/
Пост на форуме про процесс релиза Swift 6.0 и эстимейты. Можно следить за апдейтами, изменениями и обсуждениями! Если вдруг очень ждете, то можете тут следить за новостями 👍
https://forums.swift.org/t/swift-6-0-release-process/70220
Материал, который вряд ли интересен широкой аудитории, но он достаточно самобытный и специфичный, чтобы им не поделиться.
Если вы вдруг помните, то раньше в Xcode была возможность использовать плагины. И даже какой-то набор полезных плагинов действительно был. Позже эту опцию убрали, но автор статьи очень скучает по плагинам и попробовал всё-таки вклинить плагин обратно в Xcode.
Всякая возня «под капотом» и не очень понятные большинсту людей вещи, но если вы любительно таких занятий, то материал вам должен понравиться 🙃
Внутри есть ссылка на видео версию 🎥
https://bryce.co/xcode-plugin-loader/
Если у вас в приложении есть куски кода с completion блоками и вы хотите из другого места начать их использовать как async/await функции, то вам понадобится немного с этим повозиться.
Поможет вам в этом такая вещь, как continuation.
Суть в том, что вы оборачиваете вызов функции с completion блоком в этот самый continuation и дальше просто возвращаете значение из completion блока.
В статье всё подробно описано и с примером. Сверху (над заголовком) есть ссылка на похожую статью, но для кейов, когда еще и exception хотите выбросить.
P.S. Если ваш код с completion блоками написан на Objective-C, то из Swift кода вам по умолчанию будет доступен вызов через async/await, а вот для Swift кода нужна такая обертка!
https://www.hackingwithswift.com/quick-start/concurrency/how-to-use-continuations-to-convert-completion-handlers-into-async-functions
This media is not supported in your browser
VIEW IN TELEGRAM
Наверняка вы используете в своем проекте много сторонних библиотек.
И вряд ли вы часто обращаете внимание, но в основном они все идут с какой-то лицензией. В основном это MIT лицензия. Суть в том, что в этой лицензии прописано, что вы бесплатно можете использовать эту библиотечку, но в свою очередь обязутесь (грубо говоря) рассказывать о том, что используете эту библиотеку в своем приложении.
Конечно, это всё размыто и вряд ли у вас будут проблемы по этому поводу, но если вдруг, вы захотите, чтобы в настройках вашего приложения появился такой замечательный пункт, который расскажет о всех SDK, что вы используете, и о всех их лицензиях, то вот статья о том, как это сделать.
Я очень сомневаюсь, что вы этим займетесь, но хотя бы знать, что так можно сделать - уже неплохо 🙃
СПОЙЛЕР: это совсем не сложно 👍
https://www.avanderlee.com/workflow/third-party-libraries-acknowledgments-swift-packages/
Наверное, те, кто активно пользуется SwiftUI, знают про Preview macro.
Это такая штука, которая даже в пустом проекте на SwiftUI внизу файла с ContentView есть. Она используется, чтобы делать превьюшки (и так было ясно, но всё же) справа в Xcode.
И то, что она юзается для SwiftUI вряд ли секрет, но многие, предположу, не знали, что такое можно даже с UIKit использовать. Ну и с AppKit тоже.
И еще этот макрос умеет немного параметров на вход принимать.
В общем вот официальная дока Apple, где они чуть подробнее про этот макрос (и инструмент для превью в целом) рассказывают и показывают 👍
https://developer.apple.com/documentation/xcode/previewing-your-apps-interface-in-xcode
Очень содержательный материал про Optional-ы в Swift-е!
Опытные разработчики вряд ли найдут много нового, но новичкам точно будет полезно.
Кстати, какую-то часть из того, что разбирается в статье, часто спрашивают на собеседованиях, так что ознакомиться точно стоит.
Если коротко, то автор рассказывает о том, что такое Optional-ы, что представляют из себя «под капотом», как их использовать, какие последствия есть 👍
https://www.avanderlee.com/swift/optionals-in-swift-explained-5-things-you-should-know/
Разрабатывая приложение, наверняка вы много думали о том, что делать с оттоком пользователей.

Состав пишет, что в AppMetrica добавили предикты LTV и оттока, которые помогают сразу отследить lifetime value для оптимизации рекламы и придумать, как уменьшить отток пользователей. Предиктивная модель работает, кстати, на основе ML-технологии и сама адаптируется под аудиторию!
2025/07/06 05:29:35
Back to Top
HTML Embed Code: