Forwarded from Mobile VK Hub
This media is not supported in your browser
VIEW IN TELEGRAM
Конец года, и снова заканчиваются все подписки 😱
Узнали? Согласны? Не беда — мы как раз разыгрываем промокоды на год от Облака Mail и VK Музыки!
Условия участия простые:
🔹 подпишитесь на наш канал @mobilehubvk
🔹нажмите кнопку «Участвовать»
🔹 дождитесь 30 декабря — в этом посте мы выберем случайным образом 6 победителей
Информацию об организаторе, правилах и призах ищите по ссылке.
Удачи!
Узнали? Согласны? Не беда — мы как раз разыгрываем промокоды на год от Облака Mail и VK Музыки!
Условия участия простые:
🔹 подпишитесь на наш канал @mobilehubvk
🔹нажмите кнопку «Участвовать»
🔹 дождитесь 30 декабря — в этом посте мы выберем случайным образом 6 победителей
Информацию об организаторе, правилах и призах ищите по ссылке.
Удачи!
👎32❤2👍1💅1
Как устроен NSVisualEffectView
Автор статьи хотел повторить внешний вид панелей в macOS Control Center в своем собственном приложении. Чтобы это сделать, ему пришлось реверс-инжинирить нативный NSVisualEffectView и создать его полную кастомизируемую копию, которую можно изучить на GitHub.
Автор статьи хотел повторить внешний вид панелей в macOS Control Center в своем собственном приложении. Чтобы это сделать, ему пришлось реверс-инжинирить нативный NSVisualEffectView и создать его полную кастомизируемую копию, которую можно изучить на GitHub.
❤43🔥1
Fucking Approachable Swift Concurrency
Еще одна попытка объяснить базовые ментальные модели за Swift Concurrency, в том числе, как работает изоляция, на простых примерах кода и пончтных метафорах.
Еще одна попытка объяснить базовые ментальные модели за Swift Concurrency, в том числе, как работает изоляция, на простых примерах кода и пончтных метафорах.
Fucking Approachable Swift Concurrency
A no-bullshit guide to Swift concurrency. Learn async/await, actors, Sendable, and MainActor with simple mental models. No jargon, just clear explanations.
🔥24👍3💅1
SwiftUI Previews в Zed
Если вы уже попробовали разрабатывать под iOS в редакторе Zed, то держите мини-гайд по тому, как завести там превью для SwiftUI.
Если вы уже попробовали разрабатывать под iOS в редакторе Zed, то держите мини-гайд по тому, как завести там превью для SwiftUI.
Telegram
iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT
Как тестировать iOS приложения в Zed
Держите продолжение серии статей про то, как настроить Zed для полноценной iOS разработки. В этот раз про то, как настроить запуск тестов для приложений и Swift пакетов.
Прошлая статья – тут.
Держите продолжение серии статей про то, как настроить Zed для полноценной iOS разработки. В этот раз про то, как настроить запуск тестов для приложений и Swift пакетов.
Прошлая статья – тут.
👎14🔥5💅1
Как ускорить сборки на CI со slot-warmed caching
Slot-warmed caching – это способ строить билд кеш для определенных путей и переиспользовать его при последующих сборках, чтобы не пересобирать все с нуля. Автору это помогло ускорить сборки в 10 раз.
Slot-warmed caching – это способ строить билд кеш для определенных путей и переиспользовать его при последующих сборках, чтобы не пересобирать все с нуля. Автору это помогло ускорить сборки в 10 раз.
Jeffverkoeyen
10× faster Xcode CI builds with slot caching — featherless software design
❤65🔥8👍7
Почему Codable медленный
Раз в год обязательно нужно критиковать Codable, поэтому давайте сразу 1 января эту галочку и поставим. Разработчики из Тинькова рассказывают, как они решили, что именно Codable стал бутылочным горлышком их перфоманса, строили бенчмарки, и готовили PR в swift-foundation.
Раз в год обязательно нужно критиковать Codable, поэтому давайте сразу 1 января эту галочку и поставим. Разработчики из Тинькова рассказывают, как они решили, что именно Codable стал бутылочным горлышком их перфоманса, строили бенчмарки, и готовили PR в swift-foundation.
Хабр
Все не так с Codable
Привет, Хабр! На связи Кристиан Бенуа, iOS-разработчиĸ в Т-Банĸе. Быстродействие мобильных приложений — один из критериев, влияющих на успех не только приложения, но и всего бизнеса. Проводилось...
👍35❤7
This media is not supported in your browser
VIEW IN TELEGRAM
Cause & Effect Graph для SwiftUI
В Xcode 26 появился новый профилировщик для SwiftUI. Для любой вьюшки вы можете посмотреть, какие конкретно обновления стейта вызвали каждый ререндер.
В Xcode 26 появился новый профилировщик для SwiftUI. Для любой вьюшки вы можете посмотреть, какие конкретно обновления стейта вызвали каждый ререндер.
👍54🔥7❤3
Закапываем SwiftUI
Перед Новым годом в Твиттере обострились тейки про то, что команда SwiftUI проигрывает в политической борьбе внутри Apple. Откуда это мнение берется:
👉На WWDC этого года SwiftUI пушился меньше, чем раньше, плюс больше сессий показывали примеры на UIKit
👉В одном из главных SwiftUI приложений, Photos.app, в iOS 26 часть кода и инфры переписали обратно на UIKit
В статье по ссылке накидывается еще больше аргументов за то, что UIKit в 2026 стал достаточно хорошим выбором, а SwiftUI становится все хуже.
Перед Новым годом в Твиттере обострились тейки про то, что команда SwiftUI проигрывает в политической борьбе внутри Apple. Откуда это мнение берется:
👉На WWDC этого года SwiftUI пушился меньше, чем раньше, плюс больше сессий показывали примеры на UIKit
👉В одном из главных SwiftUI приложений, Photos.app, в iOS 26 часть кода и инфры переписали обратно на UIKit
В статье по ссылке накидывается еще больше аргументов за то, что UIKit в 2026 стал достаточно хорошим выбором, а SwiftUI становится все хуже.
Jacobstechtavern
2025: The year SwiftUI died
Rediscovering my love for the Classic UIKit Stack™
🔥53👎21👍7❤6💅2
Replay – тестирование против реального сетевого трафика
Replay – новая библиотека от Mattt. Она умеет захватывать ваш реальный сетевой трафик, сохранять его в файл, вырезать секреты, и дальше использовать его для тестирования вашего сетевого кода.
Replay – новая библиотека от Mattt. Она умеет захватывать ваш реальный сетевой трафик, сохранять его в файл, вырезать секреты, и дальше использовать его для тестирования вашего сетевого кода.
NSHipster
Replay
Fast, reliable API tests without mocks or stale JSON fixtures. Replay records real HTTP traffic once (as HAR) and replays it instantly with Swift Testing so your networking code stays honest and your test suite stays fast.
🔥23👍6💅3👎1
Asset Catalog для VS Code
Если вы постепенно переезжаете с Xcode в VS Code или Cursor, то вот еще одно расширение в копилку, которое возвращает часть привычного опыта – просмотровщик .xcassets файлов.
Если вы постепенно переезжаете с Xcode в VS Code или Cursor, то вот еще одно расширение в копилку, которое возвращает часть привычного опыта – просмотровщик .xcassets файлов.
1💅21👍13👎2❤1
Как устроен пайплайн рендеринга
Отличный разбор того, как устроен пайплайн рендеринга на разных платформах от уровня пикселей до лейаута кнопок в привычном вам SwiftUI. Помимо общей теоретической базы мне понравилось сравнение конкретных хиапов пайплайна для SwiftUI, Compose, React и WebGL.
Отличный разбор того, как устроен пайплайн рендеринга на разных платформах от уровня пикселей до лейаута кнопок в привычном вам SwiftUI. Помимо общей теоретической базы мне понравилось сравнение конкретных хиапов пайплайна для SwiftUI, Compose, React и WebGL.
👍19👎5❤4💅1
Учимся работать с пакетом swift-subprocess
Swift Subprocess – сравнительно свежий пакет, который упрощает задачу вызова терминальных команд из Swift кода. В статье разбирается, как с его помощью:
👉Запускать CLI программу из бандла для macOS
👉Передавать аргументы
👉Определять рабочую директорию
👉Организовывать аутпут, в том числе информацию об ошибках
👉Проверять успешность запуска
Swift Subprocess – сравнительно свежий пакет, который упрощает задачу вызова терминальных команд из Swift кода. В статье разбирается, как с его помощью:
👉Запускать CLI программу из бандла для macOS
👉Передавать аргументы
👉Определять рабочую директорию
👉Организовывать аутпут, в том числе информацию об ошибках
👉Проверять успешность запуска
1👍15❤1