iOS дайджест #43: Hot Reloading
Усі статті, обговорення, новини про Mobile — в одному місці. Підписуйтеся на телеграм-канал!
У випуску: Swift 5.6, XIP Extraction, SwiftUI Performance tips.
Digest з новою формою подачі — тепер в доповнення до інформативної текстової частини є суб’єктивна (у вигляді короткого відео).
Гаряченьке
WWDC22 пройде з 6 до 10 червня в онлайн-форматі. З цікавого — буде один офлайн-день, де студенти та інші гості зможуть подивитися основну презентацію. Де саме це буде та як потрапити — наразі невідомо.
- В Xcode додали новий режим для білд-системи, який може пришвидшити компіляцію. Опцію можна ввімкнути, прописавши ключ в UserDefaults.
- Також додали плагіни для SPM. Тепер можно додавати preBuild та build фази для пакетів. Вже є приклади зі SwiftLint та SwiftGen.
if let
shorthand for shadowing an existing optional variable
В Swift 5.7 можна буде не дублювати назву змінної, коли пишеш if let.
Self-hosted Apple Silicon GitHub Runner
Якщо дуже хочеться використовувати GitHub Actions на агенті з macOS, але не хочеться платити за це, можно запустити агент локально.
Якщо робити розпаковку XIP через термінал, то цей процес може зайняти як мінімум на 25% менше часу. У Twitter розгорнувся тред з детальним поясненням, чому так. Основне, це те, що
Що по коду
Injection отримав друге життя з підтримкою свіфта. Тобто можна додати хот релод в ваш додаток всього в декілька кроків.
Apple опублікували код десяти додатків, які написані на SwiftUI. До кожного додатка є інтерактивна сторінка з поясненням того, що робить код. Дуже раджу ознайомитись та додати в обране, щоб завжди мати під рукою.
SwiftUI Spring Animations Cheat Sheet for Developers
Будь який UI стає краще, якщо додати анімації. А якщо додати spring анімації, то взагалі "цукерочка"🍬.
Накидати інтерфейс на SwiftUI доволі просто, але треба дотримуватись ряда правил, щоб не ренедити всю вʼюху на кожну маленьку зміну. Про це та інші поради щодо продуктивності — детальніше в статті.
SwiftUI under the Hood: Variadic Views
І трошки хардкору. Ліземо в деталі реалізації SwiftUI та робимо свій клас по типу TupleView, який приймає декілька view.
Native Network Monitoring In Swift
Останній апдейт Reachability від Apple був 7 років тому. Також є реалізації на Swift. Але навіщо, якщо вже давно є нативне API NWPathMonitor, яке робить те саме, тільки краще.
@Published risks and usage explained with code examples
Що таке @Published, як його використовувати, і найважливіше — принцип роботи тригера willSet для змінної за цим property wrapperʼом.
Using the New KeyboardLayoutGuide API to move UITextField when the keyboard appears on iOS
На GitHub точно є з десяток бібліотек, які дозволяють хендлити показ клавіатури і рухати контект під нею. І ось нарешті з iOS 15 додали нативну підтримку цього.
How to make a closure always run on the Main Thread
У мене якось не прижилось писати свої проперті врапери, але ось приклад з кложурой на головному потоці виглядає непогано.
8 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів