Потоки под капотом: как работают многопоточность и синхронизация
Большой материал про то, как потоки устроены под капотом: работа потоков, скрытые механизмы, обеспечивающие их функционирование, какую пользу практикующим iOS‑разработчикам приносит понимание внутреннего устройства потоков.
🟢 Конкурентность VS параллелизм
🟢 Программа
🟢 Процесс
🟢 Поток
🟢 Задача
🟢 Kernel threads vs green threads
🟢 Потоки на уровне операционной системы
🟢 Кооперативная многозадачность
🟢 Принудительная многозадачность
🟢 Планировщики
🟢 Инструменты многопоточности и многозадачность
🟢 Закон Амдалла
🟢 Полезные в практике свойства потока
🟢 Выводы
Читать (Ru)
Большой материал про то, как потоки устроены под капотом: работа потоков, скрытые механизмы, обеспечивающие их функционирование, какую пользу практикующим iOS‑разработчикам приносит понимание внутреннего устройства потоков.
Читать (Ru)
Please open Telegram to view this post
VIEW IN TELEGRAM
10🔥12❤7👍7
Convenient Navigation in SwiftUI for iOS 16 and Above
Пример реализации удобной навигации в связке NavigationStack + MVVM для iOS 16 и выше.
Перевод от AppTractor → Удобная навигация в SwiftUI для iOS 16 и выше
P.S. В комментах к оригинальной статье автору указали на некоторые проблемы такой реализации, так что не забывайте заглядывать в комменты.
Читать (En)
Пример реализации удобной навигации в связке NavigationStack + MVVM для iOS 16 и выше.
Перевод от AppTractor → Удобная навигация в SwiftUI для iOS 16 и выше
P.S. В комментах к оригинальной статье автору указали на некоторые проблемы такой реализации, так что не забывайте заглядывать в комменты.
Читать (En)
👍7❤4🔥4💩3❤🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Creating a reusable action menu component in SwiftUI
Гайд по реализации переиспользуемого 'Action Menu' компонента по свайпу на SwiftUI.
🟢 Creating a custom view for the action menu
🟢 Refactoring ActionMenu for reuse
🟢 Creating a view modifier
🟢 Styling the action labels
🟢 Dismissing the sheet
Читать (En)
Гайд по реализации переиспользуемого 'Action Menu' компонента по свайпу на SwiftUI.
Читать (En)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥3👍2
Глоссарий Swift Concurrency
Справочник основных терминов Swift Concurrency, с краткой информацией по каждому(что это такое и для чего используется).
Читать (En)
Справочник основных терминов Swift Concurrency, с краткой информацией по каждому(что это такое и для чего используется).
Читать (En)
❤6🔥4👍3
All You Need to Know for iOS App Localization
Подробная статья про локализацию iOS-приложений с примерами, советами и лучшими практиками.
🟢 String vs. LocalizedStringKey
🟢 Providing Context
🟢 Pluralization
🟢 Formatting Data
🟢 Localizing User Interface
🟢 Styling Text Without Breaking Localization
Читать (En)
Подробная статья про локализацию iOS-приложений с примерами, советами и лучшими практиками.
Читать (En)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍3🔥3
Sheet с автоматическим подсчётом высоты и поддержкой iOS 15
Гайд по реализации нативного Sheet`а, который автоматически подсчитывает свою высоту в зависимости от контента (SwiftUI View), с поддержкой iOS 15.
Читать (Ru)
Гайд по реализации нативного Sheet`а, который автоматически подсчитывает свою высоту в зависимости от контента (SwiftUI View), с поддержкой iOS 15.
Читать (Ru)
🔥12❤4👍4
Обновления в Swift Concurrency: что нас ждёт в Swift 6
Большая статья с разбором основных изменений в Swift 6: обзор пропозалов, как теперь работает concurrency-модель, заметки важного/интересного по мнению автора, playground с тестами для каждого пропозала.
ConcurrencyPlayground – в проекте по каждому пропозалу вы можете найти тесты, которые проверяют его функциональность, и сравнить поведение кода для Swift 5 и Swift 6.
Читать (Ru)
Большая статья с разбором основных изменений в Swift 6: обзор пропозалов, как теперь работает concurrency-модель, заметки важного/интересного по мнению автора, playground с тестами для каждого пропозала.
ConcurrencyPlayground – в проекте по каждому пропозалу вы можете найти тесты, которые проверяют его функциональность, и сравнить поведение кода для Swift 5 и Swift 6.
Читать (Ru)
👍11🔥6❤5
Structured concurrency в Swift
Собрал все ссылки на посты из цикла про инструменты structured concurrency, async/await, task и TaskGroup.
🟢 Swift async/await. Чем он лучше GCD?
🟢 Swift async/await на примерах
🟢 Task и structured concurrency в swift
🟢 Swift TaskGroup на примера
🟢 Executors, Actors и их связь с потоками
Собрал все ссылки на посты из цикла про инструменты structured concurrency, async/await, task и TaskGroup.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤5🔥3
Swift 6: What’s New and How to Migrate
Подробная статья с разбором ключевых изменений в Swift 6 и инструкцией по миграции.
🟢 In this article
🟢 The idea behind Swift 6
🟢 The goals of Swift 6
🟢 What’s new in Swift 6?
🟢 Incrementally migrating your Xcode Projects and packages to Swift 6
🟢 Frequently Asked Questions (FAQ) related to Swift 6
Читать (En)
Подробная статья с разбором ключевых изменений в Swift 6 и инструкцией по миграции.
Читать (En)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6🔥4👍1
О iOS дизайн системе за 5 мин
Автор статьи делится опытом разбиения монолита на отдельные SPM пакеты и создания дизайн-системы.
Читать (Ru)
Автор статьи делится опытом разбиения монолита на отдельные SPM пакеты и создания дизайн-системы.
Читать (Ru)
🔥6👍3❤2💩1
Drawing maps with Swift Charts
С помощью Swift Charts можно рисовать не только графики, но и различные другие штуки.
В статье как раз показан один из таких кейсов – интерактивные карты с регионами.
Читать (En)
С помощью Swift Charts можно рисовать не только графики, но и различные другие штуки.
В статье как раз показан один из таких кейсов – интерактивные карты с регионами.
Читать (En)
🔥9❤2👍2
Как мы сокращали размер JSONʼа в SDUI
Разработчик из Альфа-Банк рассказывает, как они оптимизировали свой SDUI подход, а именно уменьшали количество передаваемой информации посредством сокращения JSON.
Читать (Ru)
Разработчик из Альфа-Банк рассказывает, как они оптимизировали свой SDUI подход, а именно уменьшали количество передаваемой информации посредством сокращения JSON.
Читать (Ru)
🤮8❤3🔥3👍1💩1
This media is not supported in your browser
VIEW IN TELEGRAM
Making Widgets Interactive using App Intents
Пример реализации интерактивного виджета с использованием App Intents. За счет чего можно оптимизировать и улучшить взаимодействие с пользователем.
Читать (En)
Пример реализации интерактивного виджета с использованием App Intents. За счет чего можно оптимизировать и улучшить взаимодействие с пользователем.
Читать (En)
👍6🔥3❤2
Creating Custom SF Symbols
Пошаговый туториал по созданию кастомных SF Symbols.
🟢 Creation
🟢 Rendering Symbol Customization
🟢 Distribution
🟢 Usage
Читать (En)
Пошаговый туториал по созданию кастомных SF Symbols.
Читать (En)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9❤6👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Mastering SwiftUI Scrolling: Implementing Custom Paging
Детальная статья про работу со скроллом в SwiftUI, а именно про модификатор
Читать (En)
Детальная статья про работу со скроллом в SwiftUI, а именно про модификатор
scrollTargetBehavior
, который позволяет более точно управлять поведением скролла.Читать (En)
❤7👍6🔥5
Forwarded from Mobile Native ️️
Чем полезен Server Driven UI
Базовая статья про SDUI: что это такое, из чего состоит, возможности и использование.
Читать (Ru)
Базовая статья про SDUI: что это такое, из чего состоит, возможности и использование.
Читать (Ru)
👍8👎7🔥3🤔3👏1
Simple Modularization setup for a New App
Полезная статья, в которой рассматривается простая настройка модуляризации iOS-приложения, на основе локальных пакетов.
🟢 Why Modularize?
🟢 Using Local Packages
🟢 Structure
🟢 Dependency Management Between Modules(CoreLayer, Domain Layer, Presentation Layer)
🟢 Third Party Dependencies
🟢 How to start using this?
🟢 Scaling the Approach
🟢 Conclusion
Код проекта на GitHub → ModularTemplate
Читать (En)
Полезная статья, в которой рассматривается простая настройка модуляризации iOS-приложения, на основе локальных пакетов.
Код проекта на GitHub → ModularTemplate
Читать (En)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍5❤4
Forwarded from Mobile Native ️️
Заезжаем в Kotlin Multiplatform. Но какой ценой?
В статье вы узнаете историю, как написать целый проект на Kotlin Multiplatform, сколько это стоит и сколько обойдется интеграция с точки зрения цифр.
Эта статья - текстовая расшифровка доклада с осеннего Мобиуса 2024 года📹
Читать (Ru)
В статье вы узнаете историю, как написать целый проект на Kotlin Multiplatform, сколько это стоит и сколько обойдется интеграция с точки зрения цифр.
Эта статья - текстовая расшифровка доклада с осеннего Мобиуса 2024 года
Читать (Ru)
Please open Telegram to view this post
VIEW IN TELEGRAM
💩11👍3🔥3❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Symmetrical and asymmetrical transitions in SwiftUI with the Scroll Transition modifier
Гайд по использованию нового модификатора
Читать (En)
Гайд по использованию нового модификатора
scrollTransition(_:axis:transition:)
для анимированния айтемов во время скролла на SwiftUI.Читать (En)
👍6❤3🔥3
Формализация принципа Open/Closed: как сохранить обратную совместимость с помощью SOLID
В статье, на примере библиотеки дизайн-системы рассматривается принцип Open / Closed из SOLID, а именно как с его помощью сохранить обратную совместимость.
Читать (Ru)
В статье, на примере библиотеки дизайн-системы рассматривается принцип Open / Closed из SOLID, а именно как с его помощью сохранить обратную совместимость.
Читать (Ru)
❤6🔥4👍3🤡3