Swift Tips
3.28K subscribers
460 photos
16 videos
2 files
438 links
Ежедневные советы, подсказки, лайфхаки и статьи по iOS и Swift.

По всем вопросам: @artemiygreg
Найти проект: @ios_job
Download Telegram
Please open Telegram to view this post
VIEW IN TELEGRAM
👍147🔥6
How to inspect .ipa files and secure your iOS app from common mistakes

Гайд по тому, как исследовать .ipa-файлы и какие данные из них можно получить. Также в статье приводятся простые, базовые правила для организации безопасности чувствительных данных.

Читать (En)
👍96🔥4
Using Swift’s defer keyword within async and throwing contexts

В статье разбирается использование ключевого слова defer в контексте асинхронщины, на простом примере запросов к БД.

Читать (En)
👍54🔥4
6👍5🔥4
Сollection of TextRenderer

Prismic — репозиторий с подборкой примеров TextRenderer для визуализации текста с помощью специальных эффектов. Некоторые эффекты на чистом Swift, а другие, более сложные с использованием Metal.

Репозиторий на GitHub → Prismic
👍43🔥3
Отлаживаем приложение вместе со SwiftUI Instruments

Статья-гайд от Surf про отладку приложения с помощью SwiftUI Instruments.

🟢Что такое SwiftUI Instruments и зачем он нужен
🟢Как и в каких случаях стоит использовать
🟢Пример отладки кастомной шторки

Читать (Ru)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥43
С Днём Победы!!!
С Великим Праздником, друзья!
42🕊17👍9🙏2
Rafinad: сахар для UI-тестирования iOS-приложений

Ребята из iOS-команды hh выкатили свои наработки по UI-тестированию в виде open-source проекта — Rafinad.

В статье рассказывают, что из себя представляет Rafinad, что умеет и как им пользоваться.

Библиотека на GitHub → Rafinad

Читать (Ru)
👍104🔥4
Привет! Давно не виделись, пришло время возвращаться к публикациям 😎
4👍3🔥2
Swift concurrency. Executors, Actors и их связь с потоками

Новая и как всегда подробная часть из этой серии, в которой рассказывается про недра Swift Concurrency.

🟢Как определяется поток, на котором будет выполняться Task
🟢Почему в рамках одной Task поток может меняться
🟢Что такое Executor и на какие типы он делится
🟢За что отвечает TaskExecutor, а за что SerialExecutor
🟢Как определить текущий Executor по коду
🟢Как использовать свой самописный Executor

Читать (Ru)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43🔥3
iOS 26: Notable UIKit Additions

Такс, разбираю отложенные материалы, вероятно до конца недели могу чутка поспамить, но это не точно 😉

Небольшая обзорная статья основных изменений в UIKit.

👉 Observable Objects
👉 Update properties
👉 Flushing animation updates

Читать (En)
🔥32👏2👍1
async let vs Task group

Ещё одна статья про Swift Concurrency, а именно про отличия async let и Task group с примерами.

Читать (Ru)
👍7🔥43
Swift Actors: What Are They For?

Актор — это ссылочный тип, подобный классу, созданный для безопасного управления изменяемым состоянием в многопоточке. Акторы, представленные в Swift 5.5, помогают разработчикам писать потокобезопасный и более предсказуемый код при работе с асинхронными задачами.

В статье более детально можно почитать что это такое и чем отличаются от классов и посмотреть простые примеры использования.

Читать (En)
🔥53👍3
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥32
Combine and Swift Concurrency: A threading risk

Небольшая статья про Combine и Swift Concurrency: миграция, совместное использование и возможные риски, после миграции.

🟢Dispatching to a @MainActor isolation using a Combine pipeline
🟢No compile-time feedback for sink closures
🟢Solving Actor isolation issues in Combine

Читать (En)
Please open Telegram to view this post
VIEW IN TELEGRAM
43🔥3👍2
Modern Swift Lock: Mutex & the Synchronization Framework

В статье разбирается один из механизмов синхронизации – Mutex. Как с ним работать, разница mutex и lock, обработка ошибок и т.д..

🟢What is a Swift Lock?
🟢Using Swift’s Mutex lock from the Synchronization framework
🟢A lock that works great with Swift Concurrency
🟢Shouldn’t I use an actor instead of locks in Swift Concurrency?

Читать (En)
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍2🔥2
Игра в SPM

В статье автор делится опытом перехода на Swift Package Manager, проблемами с которыми столкнулся и как их решал.

Читать (Ru)
👍43🔥3
How to use the @available attribute in Swift

Небольшая статья про то, как использовать атрибут @available.

Читать (En)
🔥43👍3
Global actor in Swift Concurrency explained with code examples

Ещё одна небольшая статья про Concurrency, а именно разбор Global Actor с примерами кода.

🟢 What is a Global Actor?
🟢 How to use a custom Global Actor?
🟢 Preventing misuse of a Global Actor

Читать (En)
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2🔥2
12 Swift Optimization Secrets Apple Won’t Tell You

Статья с советами, рекомендациями и примерами оптимизации Swift-кода.

🟢Copy-on-Write (COW): Smart Memory Efficiency
🟢Value Types vs Reference Types: The Foundation of Swift Performance
🟢ARC Overhead: Understanding Retain and Release
🟢Inlining and Function Dispatch
🟢Looping and Lazy Collections
🟢Memory Layout Optimization: Struct Alignment Tricks
🟢Concurrency Optimizations: Making Async Code Fly
🟢Compiler-Level Optimizations
🟢Profiling with Instruments
🟢Real-World iOS Scenarios
🟢Practical Tips & Best Practices
🟢Conclusion: Clean Code First, Optimize Second

Читать (En)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥21