Swift Community Showcase - интересные проекты и достижения экосистемы
На форумах Apple разработчики регулярно делятся своими примерами проектов, подходами и тем, как можно использовать привычные инструменты в сложных системах.
Делюсь подборкой за прошедший месяц.
🔗 A little brother for Swift Argument Parser
Легковесный альтернативный парсер аргументов командной строки
🔗 Swift Context Management
Для более эффективного понимания лимитов токенов и работы с контекстом в приложениях на Swift
🔗 Modern DI for Swift Concurrency
Современная библиотека DI, разработанная для Swift Concurrency и SwiftUI
🔗 monocle
CLI для агентов, позволяет проверять символы Swift через SourceKit-LSP
🔗 TaylorTorch: современный Swift-враппер for LibTorch
Позволяет юзать всю мощь PyTorch для нативных Swift-приложений. В следующий раз попробую его использовать👩🎓
Остальные проекты можно посмотреть на скриншоте.
😃 iOS Dev
На форумах Apple разработчики регулярно делятся своими примерами проектов, подходами и тем, как можно использовать привычные инструменты в сложных системах.
Делюсь подборкой за прошедший месяц.
Легковесный альтернативный парсер аргументов командной строки
Для более эффективного понимания лимитов токенов и работы с контекстом в приложениях на Swift
Современная библиотека DI, разработанная для Swift Concurrency и SwiftUI
CLI для агентов, позволяет проверять символы Swift через SourceKit-LSP
Позволяет юзать всю мощь PyTorch для нативных Swift-приложений. В следующий раз попробую его использовать
Остальные проекты можно посмотреть на скриншоте.
Please open Telegram to view this post
VIEW IN TELEGRAM
8🔥17 10💯4✍1👍1👏1🤯1🏆1
Swift Actors: 6 подводных камней, которые подстерегают даже опытных разработчиков
Когда Apple представила акторы, среди обещаний особенно выделялось: «конец проблемам с гонками данных». Реальность оказалась гораздо сложнее.
После ряда экспериментов с акторами Рафал Дубиэль составил список ловушек, в которые регулярно попадают даже опытные разработчики.
Некоторые из них плохо документированы, а другие активно вводят в заблуждение.
📖 Целиком статью можно прочитать вот тут.
😃 iOS Dev
Когда Apple представила акторы, среди обещаний особенно выделялось: «конец проблемам с гонками данных». Реальность оказалась гораздо сложнее.
После ряда экспериментов с акторами Рафал Дубиэль составил список ловушек, в которые регулярно попадают даже опытные разработчики.
Некоторые из них плохо документированы, а другие активно вводят в заблуждение.
📖 Целиком статью можно прочитать вот тут.
Please open Telegram to view this post
VIEW IN TELEGRAM
9🔥24 11✍4👏2💯2👍1
Универсальность использования Tasks в Swift
Если вы уже давно занимаетесь разработкой для платформ Apple, ваше понимание «параллелизма» может уходить корнями к эпохе Grand Central Dispatch. А если вы в разработке для яблочных девайсов ещё дольше, то как заметил Макс Зелеманн, то даже и к pthreads.
В этой небольшой, но интересной статье рассматриваются моменты, которые могут быть не совсем очевидны при работе с тасками.
📖 Вот выводы, к которым в итоге пришёл автор статьи (но рекомендую посмотреть и сам пост):
😃 iOS Dev
Если вы уже давно занимаетесь разработкой для платформ Apple, ваше понимание «параллелизма» может уходить корнями к эпохе Grand Central Dispatch. А если вы в разработке для яблочных девайсов ещё дольше, то как заметил Макс Зелеманн, то даже и к pthreads.
В этой небольшой, но интересной статье рассматриваются моменты, которые могут быть не совсем очевидны при работе с тасками.
📖 Вот выводы, к которым в итоге пришёл автор статьи (но рекомендую посмотреть и сам пост):
➡️ В своей простейшей форме они представляют собой замыкания для длительных операций в фоне.➡️ Они предоставляют асинхронный контекст, позволяя вызывать асинхронный код.➡️ Если хранить дескриптор, можно ждать завершения в другом месте или отменить задачу вовсе, когда она больше не нужна.➡️ Если вы передаете дескриптор задачи, он служит в качестве промиса (будущего) для значения результата.➡️ Поскольку задачи являются потокобезопасными, они также служат в качестве механизмов синхронизации вокруг их комплишна и результата.
Please open Telegram to view this post
VIEW IN TELEGRAM
19🔥11 8👏6👍3
Разбор архитектуры SwiftUI в 2025 году: MVVM, MVC или TCA
Выбор правильной архитектуры для SwiftUI аналогичен выбору правильной программы тренировки.
Именно с такими словами выступает автор следующей статьи.
📖 А его взгляд на то, что стоит использовать - можно почитать вот здесь.
😃 iOS Dev
Выбор правильной архитектуры для SwiftUI аналогичен выбору правильной программы тренировки.
Каждый эксперт утверждает, что его метод лучший, но если попробовать одно или другое руководство, есть ненулевой шанс, что внезапно ваш проект разрастётся неизвестно во что.
Именно с такими словами выступает автор следующей статьи.
📖 А его взгляд на то, что стоит использовать - можно почитать вот здесь.
Please open Telegram to view this post
VIEW IN TELEGRAM
11🔥22 9👏4 2⚡1👍1💯1🏆1
iOS Dev
Просто напоминание, в Матрице плохих парней называли агентами. 25 лет спустя они уже здесь.
Тем временем в Xcode 26.3 рассказали, как работать с агентами
В новом видео за 5 минут рассказывают, как юзать OpenAI Codex и Claude Agent, для совместной работы над сложными многоэтапными задачами.
Например, как Xcode позволяет агентам создавать проекты, запускать тесты и искать документацию Apple — и все это через Model Context Protocol.
📺 А вот и ссылка!
😃 iOS Dev
В новом видео за 5 минут рассказывают, как юзать OpenAI Codex и Claude Agent, для совместной работы над сложными многоэтапными задачами.
Например, как Xcode позволяет агентам создавать проекты, запускать тесты и искать документацию Apple — и все это через Model Context Protocol.
📺 А вот и ссылка!
Please open Telegram to view this post
VIEW IN TELEGRAM
9🔥21👍9 6👏2🆒1
This media is not supported in your browser
VIEW IN TELEGRAM
3D-диаграммы в iOS 26 в 3 строчки кода
В 26 оси появилась крутая история с возможностью добавить 3D-диаграммы буквально в пару строк (можно юзать SurfacePlot или 3D-инициализаторы для PointMark, RuleMark, и RectangleMark).
Например, можно сделать так:
А для интерактивного управления, достаточно всего лишь использовать Chart3DPose с указанными значениями азимута и наклона.
А помните, всего несколько лет назад для этого надо было крутиться со сложной математикой и SceneKit.
Расширенный код (включая приятный премиум-эффект) и многое другое:💰 На бусти и ⭐️ в телеграме.
😃 iOS Dev
В 26 оси появилась крутая история с возможностью добавить 3D-диаграммы буквально в пару строк (можно юзать SurfacePlot или 3D-инициализаторы для PointMark, RuleMark, и RectangleMark).
Например, можно сделать так:
Chart3D {
SurfacePlot(x: "x", y: "y", z: "z") { x, z in
sin(2 * x) * cos(2 * z)
}
}
А для интерактивного управления, достаточно всего лишь использовать Chart3DPose с указанными значениями азимута и наклона.
А помните, всего несколько лет назад для этого надо было крутиться со сложной математикой и SceneKit.
Расширенный код (включая приятный премиум-эффект) и многое другое:
Please open Telegram to view this post
VIEW IN TELEGRAM
6🔥23 6🤩4👍3👏1💯1🏆1🎄1
Combine официально всё
Артем Новичков подсветил, что в AgentSystemPromptAddition в Xcode 26.3 есть такая строка:
Маякни реакцией 🎉, если ожидаемо.
😃 iOS Dev
Артем Новичков подсветил, что в AgentSystemPromptAddition в Xcode 26.3 есть такая строка:
Avoid using the Combine framework and instead prefer to use Swift's async and await versions of APIs instead.
Маякни реакцией 🎉, если ожидаемо.
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉154🤯23✍11 4👍3🔥3❤🔥1🏆1🤗1 1