Примеры использования Swift Collections
Swift Collections – официальный пакет от Apple, который реализует часто используемые структуры данных. В статье приводятся примеры работы с некоторыми из них:
👉Tree-based dictionary and set
👉Min-max heap
👉Ordered dictionary and set
👉Deque
Swift Collections – официальный пакет от Apple, который реализует часто используемые структуры данных. В статье приводятся примеры работы с некоторыми из них:
👉Tree-based dictionary and set
👉Min-max heap
👉Ordered dictionary and set
👉Deque
Как вернуть плагины в Xcode
Начиная с Xcode 14, Apple окончательно убили поддержку плагинов. Автору статьи очень не хватало поддержки Vim режима, поэтому он решил не сдаваться, научился инжектить код, обходить проверки безопасности и запускать старые плагины.
Код можно посмотреть на GitHub.
Начиная с Xcode 14, Apple окончательно убили поддержку плагинов. Автору статьи очень не хватало поддержки Vim режима, поэтому он решил не сдаваться, научился инжектить код, обходить проверки безопасности и запускать старые плагины.
Код можно посмотреть на GitHub.
bryce.co
Modding Plugins back into Xcode
Adding plugin support to Xcode 14+, the hard way
Как Spotify следит за размером приложения
Доклад инженера Spotify про то, какими способами они уменьшают размер приложения и следят за тем, чтобы он не рос со временем.
Доклад инженера Spotify про то, какими способами они уменьшают размер приложения и следят за тем, чтобы он не рос со временем.
YouTube
SwiftConf 2023 – Bruno Rocha: Keeping Swift Apps Small: Why and How
Learn why app download size matters and how to keep your apps small. Bruno explores common pitfalls and tips for reducing app size.
Bio: Bruno is an iOS engineer with extensive experience and a focus on app performance at Spotify.
https://twitter.com/rockbruno_…
Bio: Bruno is an iOS engineer with extensive experience and a focus on app performance at Spotify.
https://twitter.com/rockbruno_…
Privacy manifest в XCFramework
Где-то в 2024 году Apple начнет требовать добавлять privacy manifest'ы в подписанные фреймворки. Нормальной официальной документации пока нет, но статья отлично справляется с ролью гайда.
Где-то в 2024 году Apple начнет требовать добавлять privacy manifest'ы в подписанные фреймворки. Нормальной официальной документации пока нет, но статья отлично справляется с ролью гайда.
Rhonabwy
Embedding a privacy manifest into an XCFramework
During WWDC 2023, Apple presented a number of developer-impacting privacy updates. One of the updates, introducing the concept of a privacy manifest, has a direct impact on the work I’ve been…
Неофициальный мониторинг статуса работы App Store Connect
Держите сервис, который регулярно обращается к различным API методам App Store Connect, репортит текущий статус их работы и считает общий аптайм.
Держите сервис, который регулярно обращается к различным API методам App Store Connect, репортит текущий статус их работы и считает общий аптайм.
Сроки внедрения privacy manifests
📆С 13 марта при каждой загрузке билда в App Store Apple будет присылать письмо с напоминанием о том, чего не хватает вашему privacy manifest.
📆Начиная с 1 мая приложения, содержащие некоторые сторонние SDK, и не указывающие причину их наличия в манифесте, будут реджектиться.
📆С 13 марта при каждой загрузке билда в App Store Apple будет присылать письмо с напоминанием о том, чего не хватает вашему privacy manifest.
📆Начиная с 1 мая приложения, содержащие некоторые сторонние SDK, и не указывающие причину их наличия в манифесте, будут реджектиться.
Apple
Privacy updates for App Store submissions - Latest News - Apple Developer
Developers are responsible for all code included in their apps. At WWDC23, we introduced new privacy manifests and signatures for commonly used third-party SDKs and announced that developers will need to declare approved reasons for using a set of APIs in…
Алгоритмы лифтов
Кайфовый доклад с конференции Swift Heroes про историю развития алгоритмов работы лифтов и примерами реализации их на Swift.
Кайфовый доклад с конференции Swift Heroes про историю развития алгоритмов работы лифтов и примерами реализации их на Swift.
Как компилятор обрабатывает DispatchQueue.main
Компилятор Swift умеет автоматически интерпретировать вызов
Компилятор Swift умеет автоматически интерпретировать вызов
DispatchQueue.main.async
как @MainActor
. Пусть это поведение и удобное, но оно не явное, что еще сильнее усложняет понимание Swift Concurrency. В статье разбирается, как конкретно компилятор обрабатывает этот вызов.Примеры использования Swift Async Algorithms
Swift Async Algorithms – официальный пакет от Apple, который реализует часто используемые асинхронные алгоритмы, которые позволяют полностью избавиться от Combine. В статье разбираются некоторые кейсы использования пакета.
Swift Async Algorithms – официальный пакет от Apple, который реализует часто используемые асинхронные алгоритмы, которые позволяют полностью избавиться от Combine. В статье разбираются некоторые кейсы использования пакета.
Советы по реализации Picture-in-Picture
Разбор самых частых сценариев использования picture-in-picture режима для AVPlayer и известных ограничений.
Разбор самых частых сценариев использования picture-in-picture режима для AVPlayer и известных ограничений.
Релиз Swift 5.10
Главная новость прошлой недели – вышел Swift 5.10. Релиз сосредоточен на допиливании модели многопоточности, которая будет включена по дефолту уже в следующей языковой версии, которой, кстати, будет уже Swift 6.
Главная новость прошлой недели – вышел Swift 5.10. Релиз сосредоточен на допиливании модели многопоточности, которая будет включена по дефолту уже в следующей языковой версии, которой, кстати, будет уже Swift 6.
Swift.org
Swift 5.10 Released
Swift was designed to be safe by default, preventing entire categories of programming mistakes at compile time. Sources of undefined behavior in C-based languages, such as using variables before they’re initialized or a use-after-free, are defined away in…
Пишем клиент для подсчета средней оценки по версиям
Подробный гайд по тому, как с помощью App Store Connect API и OpenAPI генератора написать клиент, который будет расчитывать среднюю оценку каждой версии вашего приложения.
Подробный гайд по тому, как с помощью App Store Connect API и OpenAPI генератора написать клиент, который будет расчитывать среднюю оценку каждой версии вашего приложения.
Как разрабатывать на Swift под Windows
Ребята из The Browser Company продолжают быть активными адвокатами использования Swift для Windows. В этот раз они рассказывают, как выглядит developer experience разработчиков, которые пишут на Swift не на macOS, а на винде.
Ребята из The Browser Company продолжают быть активными адвокатами использования Swift для Windows. В этот раз они рассказывают, как выглядит developer experience разработчиков, которые пишут на Swift не на macOS, а на винде.
Swift теперь работает на Playdate
Коллаб, который не ждал вообще никто. Playdate – нишевая игровая микроконсоль, главная фича которой – крутящаяся ручка сбоку. Так вот, теперь игры для нее можно писать и на Swift вместо Lua. Отличная возможность для пет-проекта!
Коллаб, который не ждал вообще никто. Playdate – нишевая игровая микроконсоль, главная фича которой – крутящаяся ручка сбоку. Так вот, теперь игры для нее можно писать и на Swift вместо Lua. Отличная возможность для пет-проекта!
Рецепты работы со Swift Concurrency
GitHub репозиторий с подборкой паттернов работы с многопоточностью в Swift.
👉Async Context
👉Protocols
👉Isolation
👉Structured Concurrency
👉SwiftUI
👉Libraries not designed for concurrency
👉Interoperability
GitHub репозиторий с подборкой паттернов работы с многопоточностью в Swift.
👉Async Context
👉Protocols
👉Isolation
👉Structured Concurrency
👉SwiftUI
👉Libraries not designed for concurrency
👉Interoperability
GitHub
GitHub - mattmassicotte/ConcurrencyRecipes: Practical solutions to problems with Swift Concurrency
Practical solutions to problems with Swift Concurrency - mattmassicotte/ConcurrencyRecipes
Microsoft App Center – все
На главной странице App Center, главной альтернативы Crashlytics, появилось сообщение о том, что в 2025 году сервис будет закрыт. Часть сервисов продолжат существовать отдельно:
👉Build переезжает в Azure Pipelines
👉CodePush предлагают поднимать самим, по запросу выдают сборку
👉Аналитику реализует часть сервисов Azure
На главной странице App Center, главной альтернативы Crashlytics, появилось сообщение о том, что в 2025 году сервис будет закрыт. Часть сервисов продолжат существовать отдельно:
👉Build переезжает в Azure Pipelines
👉CodePush предлагают поднимать самим, по запросу выдают сборку
👉Аналитику реализует часть сервисов Azure
Генерация Swift интерфейсов из Pkl файлов
Помните, что Apple недавно выпустили Pkl, новый конфигурационный язык? Держите статью про то, как с помощью SwiftPM плагина генерировать интерфейсы из Pkl и использовать в своих приложениях.
Помните, что Apple недавно выпустили Pkl, новый конфигурационный язык? Держите статью про то, как с помощью SwiftPM плагина генерировать интерфейсы из Pkl и использовать в своих приложениях.
Pack Iteration в Swift 6.0
В Swift 6.0 появится фича pack iteration – итератор по элементам туплов. Это стало особенно актуально, потому что, начиная со Swift 5.9, мы больше не ограничены шестью параметрами в туплах.
В статье много примеров того, как pack iteration упрощает жизнь в частых сценариях.
В Swift 6.0 появится фича pack iteration – итератор по элементам туплов. Это стало особенно актуально, потому что, начиная со Swift 5.9, мы больше не ограничены шестью параметрами в туплах.
В статье много примеров того, как pack iteration упрощает жизнь в частых сценариях.
Swift.org
Iterate Over Parameter Packs in Swift 6.0
Parameter packs, introduced in Swift 5.9, make it possible to write generics that abstract over the number of arguments. This eliminates the need to have overloaded copies of the same generic function for one argument, two arguments, three arguments, and…
Разбор 20 пейволлов разных приложений
Если в вашем приложении есть пейволлы, то обязательно посмотрите примеры по ссылке – они могут натолкнуть вас и ваших продактов на новые идеи по их улучшению.
Если в вашем приложении есть пейволлы, то обязательно посмотрите примеры по ссылке – они могут натолкнуть вас и ваших продактов на новые идеи по их улучшению.