TGViewer
Channel Public Channel
iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

@iosgr

Самые интересные статьи, видео и новости, связанные с iOS разработкой. Не больше трёх материалов в день.

Регистрация в РКН: https://gosuslugi.ru/snet/67b464d698a28c4e866d827a

Размещение рекламы: @tanyasanovna
Subscribers
12K
Photos
768
Videos
71
Links
4.3K

Showing posts older than #4327 · Back to latest

Older Posts 20 shown
Post #4326 7.6K
Избегаем Optionals при работе с URL

Санделл вышел из долгой спячки, и сразу же с прекрасной статьей про разные техники работы с URL, которые помогают избежать работы с ним как с Optional типом. Одна из них – макросы, которые позволяют удобно работать с URL, известными в компайл-тайме, а вторая – сравнительно новый API для динамической сборки URL в рантайме.
Swift by Sundell Modern URL construction in Swift | Swift by Sundell How to combine Foundation’s latest URL APIs with Swift features like macros, to be able to work with both static and dynamic URLs in simpler and more predictable ways.
  • 👍 28
  • ❤ 10
Post #4324 7.04K
Выпуск Подлодки про Swift

Восемь лет назад мы начинали Подлодку как подкаст про iOS разработку. Со временем проект эволюционировал, мы все больше и больше расширяли список тем. Но когда-то нужно вернуться и к корням – и спустя 400 выпусков мы все-таки записали офигенный подробный эпизод про Swift. Глеб Лукьянец, которого знают все посетители нашего чата, рассказал про историю развития, ключевые фичи и необычные технические концепции в языке. Ну и, конечно же, похоливарили про растущую сложность, запутанный дизайн и макросы!
YouTube Swift – больше, чем язык для iOS | Для чего нужен язык Свифт | Podlodka Podcast #417 Большинство из вас знает Swift как нишевый язык для iOS разработки. Но на самом деле – это очень круто задизайненный язык программирования общего назначения, который по многим параметрам выигрывает у C++ или Rust. Swift избегает крайностей и находит качественный…
  • 👍 38
  • 🔥 26
  • 💅 11
Post #4322 6.19K
Интеграция SwiftUI с Rust-библиотекой egui

Держите дикую историю про то, как общая структура приложения была реализована на SwiftUI, а вот рендеринг конкретных таблиц, требовательных к перфомансу, на Rust-либе egui.

👉Исходники
👉Видео результата
Medium Fast & Fluid: Integrating Rust egui into SwiftUI Let’s be honest: the path we’re about to take in this article isn’t a simple one. If you’re considering this approach for your app, you…
  • 🔥 23
  • ❤ 1
  • 👍 1
Post #4320 5.94K
Релиз Swiftly 1.0

Swiftly – это CLI-тул, который позволяет удобно менеджерить версии Swift тулчейна. Он может пригодиться, когда вы хотите установить версию Swift, отличную от той, которая шиппится вместе с Xcode, или установить Swift на не-macOS систему.
Swift.org Introducing swiftly 1.0 Today we’re delighted to introduce the first stable release of swiftly, a Swift version manager that takes the pain out of installing, managing and updating your Swift toolchain.
  • 🔥 20
  • ❤ 1
  • 👎 1
Post #4318 6.01K
Релиз Swift 6.1

👉nonisolated теперь можно применять не только к пропертям и функциям, но и к типам и расширениям.
👉Методы из хедеров ObjC классов теперь можно реализовывать в Swift, используя новое ключевое слово @implementation.
👉Trailing commas теперь поддерживаются не только в коллекциях, но и в кортежах, списках параметров и аргументов, строковых интерполяциях и в других местах.
👉С помощью package traits часть API теперь можно объявлять доступными только для конкретных платформ – например, Embedded или Wasm.
Swift.org Swift 6.1 Released Swift 6.1 is now available!
  • ❤ 18
  • 👍 9
Post #4315 6.45K
Как писать git hooks на Swift

На Swift можно писать не только консольные тулы, но и скрипты, которые будут автоматически вызываться либо до, либо после коммита в Git. В статье разбирается пример хука, который не даст коммитить в мастер код, содержащий принты.
www.swifttoolkit.dev Git Hooks 🤝 Swift Use Git hooks in your Git repos to ensure standards and catch issues
  • 👍 19
  • ❤ 4
  • 💅 4
Post #4314 7.4K
MCP для iOS симулятора

Model-Context Protocol – это дико хайпующий сейчас стандарт для общения LLM с внешними инструментами. Так вот, его прикрутили и к iOS симулятору для взаимодействия с его UI, а значит, ваш AI теперь может самостоятельно взаимодействовать с запущенным приложением – например, заменяя собой QA.
GitHub GitHub - joshuayoes/ios-simulator-mcp: MCP server for interacting with the iOS simulator MCP server for interacting with the iOS simulator. Contribute to joshuayoes/ios-simulator-mcp development by creating an account on GitHub.
  • 👍 39
  • ❤ 4
Post #4312 8.11K
Туториал про профилирование от Apple

Apple выпустили большой полуторачасовой туториал про то, как использовать Instruments для профилирования фризов и перфоманса приложения.
Apple Developer Documentation Profiling apps using Instruments | Apple Developer Documentation Use Instruments to analyze the performance, resource usage, and behavior of your apps. Learn how to improve responsiveness, reduce memory usage, and analyze complex behavior over time.
  • ❤ 68
  • 👍 4
Post #4311 6.42K
Bindings в SwiftUI

Chris Eifhof рассказывает, почему в продакшн коде стоит избегать Binding(get:set:) – меньше рисков поймать проблемы с перфомансом, код проще поддерживать и тестировать.
chris.eidhof.nl Bindings — Chris Eidhof
  • 👍 9
  • 👎 3
Post #4310 7.72K
Мутационное тестирование в большом проекте

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

В статье разбирается опыт использования Muter в проекте с 1000 тестов и 1657 сгенерированных мутантов.
GitHub GitHub - muter-mutation-testing/muter: 🔎 Automated mutation testing for Swift 🕳️ 🔎 Automated mutation testing for Swift 🕳️. Contribute to muter-mutation-testing/muter development by creating an account on GitHub.
  • 👎 7
  • ❤ 6
  • 💅 3
  • 👍 2
  • 🔥 2
Post #4309 7.29K
Почему Group в SwiftUI стоит избегать

В отличие от VStack/HStack, Group работает не очень надежно – поведение между симуляторами и превью различается, какие-то модификаторы вызываются только один раз, а какие-то – для каждой вьюшки.
chris.eidhof.nl Why I Avoid Group — Chris Eidhof
  • 💅 17
  • ❤ 7
  • 👎 4
Post #4307 6.26K
WWDC 2025

А вот и анонс WWDC этого года. Блокируем неделю с 9 по 13 июня. Смотреть можно, как и в прошлый раз на YouTube и в Apple Developer app.
  • ❤ 27
  • 👍 11
  • 👎 6
  • 💅 2
Post #4306 6.68K
Используем Swift в Zed

Zed – сравнительно недавно выпущенный редактор кода, основная особенность которого – он супер быстрый. Если вам интересно посмотреть на еще одну альтернативу Xcode, то настроить для Swift разработки по инструкциям из статьи его довольно просто.
  • 👍 24
  • 👎 5
  • 💅 5
Post #4305 8K
Новая рабочая группа в Swift, отвечающая за тестирование

Как вы, наверное, знаете, развитие Swift сейчас довольно децентрализовано, и за разные его аспекты отвечают рабочие группв, собранные как из сотрудников Apple, так и из членов коммьюнити. Так вот, сформирована новая рабочая группа, которая будет отвечать за все, что связано с тестированием, включая различный тулинг и библиотеки. В основном они будут заниматься реализацией Swift Testing Vision.

Подробнее об участниках и целях можно прочитать здесь.
Swift Forums Announcing the Testing Workgroup I'm excited to announce the formation of a new Testing Workgroup for Swift! This team will help guide the experience, libraries, and tools for testing Swift code. The idea of creating a testing workgroup first came up during the Language Steering Group's…
  • 🔥 12
  • 👍 8
Post #4303 6.66K
Рендеринг пиксель-арта

Основная проблема в рендеринге пиксель-арта – размывание четких границ каждого пикселя при скейле картинки для дисплеев с большим разрешением. В статье разбирается два способа, как это сделать в SwiftUI: с помощью Image и с помощью Canvas.
  • 👍 7
  • 🔥 3
  • ❤ 1
Post #4301 6.9K
Правильный поиск вхождения строки

❌ name.lowercased().contains(searchText.lowercased())
✅ name.localizedStandardContains(searchText)

Чем второй вариант лучше:

👉По умолчанию case insensitive
👉Игнорирует диакритические знаки (cafe vs café)
👉Нормально справляется с локально-специфичными символами (ẞ → ss)
👉Поддерживается в SwiftData
  • 👍 98
  • 🔥 41
  • ❤ 1
  • 💅 1
Post #4299 7.99K
Что происходит с Apple Intelligence

На прошлой неделе Apple в очередной раз отложили релиз новых AI фичей, которые показывали еще на WWDC. Одновременно с этим произошла утечка того, о чем говорилось на внутреннем разборе полетов команды Siri:

👉AI надежно работает только в 66-80% случаев, что очень мало и далеко от продакшна.
👉Менеджер команды Siri винит маркетинг в том, что всему миру показали и пообещали еще не работающие фичи, создав нереалистичные ожидания.
👉Никого из топов увольнять за провал пока не планируют, но и не исключают этого.
👉Apple Intelligence выпустят только тогда, когда будут уверены в качестве.
Daring Fireball Something Is Rotten in the State of Cupertino Who decided these personalized Siri features should go in the WWDC keynote, with a promise they’d arrive in the coming year, when, at the time, they were in such an unfinished state they could not be demoed to the media even in a controlled environment? Three…
  • 👍 24
  • ❤ 3
  • 💅 3
  • 👎 1
Post #4297 6.26K
Новый релиз Copilot for Xcode

Вышла новая версия плагина Copilot, вместе с которой он перешел из статуса беты в GA. Самое важное – теперь можно выбирать, какая LLM будет использоваться в чате: Claude Sonnet, o1 или o3-mini.
  • 👍 16
  • 💅 7
Post #4296 7.87K
Как сократить большой JSON

Огромные JSON'ы, загружаемые с сервера, один из частых недостатков backend-driven UI. Ребята из Альфы рассказывают, как они свели дублирующиеся конструкции к минимуму, реализовав кастомную логику шаблонизации. В итоге на списках со 100 элементами получается ~74% экономии.
Хабр Как мы сокращали размер JSONʼа в SDUI Проблема большого объёма JSON Представим, что мы отображаем на экране несколько однотипных элементов, например, список акций. Представим SDUI-разметка для данного экрана. Акции отображаются с помощью...
  • 💅 7
  • 👎 3
  • 👍 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →