iOS дайджест #35: курс Combine, Redux + SwiftUI, Vapor 4

У випуску: продовжуємо вивчати SwiftUI, налаштовуємо GitHub Actions для Swift-проектів і дивимося відео з конференцій.

SwiftUI

SwiftUI
Якщо ви пропустили все про SwiftUI, то ось непоганий початок.

SwiftUI Is Still the Future
SwiftUI — це вже сьогодення чи майбутнє?

Integrating SwiftUI with UIKit and Developing Xcode Previews for UIKit's ViewController
Перегляд відрендерених SwiftUI в'юх — для мене це прям кілер фіча. І її можна використовувати для звичних в'ю контролерів.

SwiftUI for Mac
Здавалося б, SwiftUI повинен працювати однаково на всіх платформах, але під мак відмінності все ж є.

The power of @ViewBuilder in SwiftUI
Якщо ви вже використовуєте SwiftUI і в'юшки починають розростатися, то варто подивитися на @ViewBuilder, щоб рознести створення і відображення.

SwiftUI Animation
Лонгрид про анімації в SwiftUI. Хоч і незвично писати, але навіть анімації виглядають в результаті елегантніше.

Building a Custom App Using SwiftUI
І ще про анімації — робимо подобу breath на Apple app Watch.

Data Driven SwiftUI
Робити в'юшки на SwiftUI це добре, але адже хочеться розібратися, як використовувати їх з даними в реальному додатку.

Redux-like state in container SwiftUI. Basics.
Redux-like state in container SwiftUI. Container Views.
І ще про SwiftUI і Redux.

Загальна

Haptrix — Core Haptics Designer
Лише API для вібрації, а хлопці зробили додаток, щоб грати музику з допомогою цього!

What's New in Vapor 4
Вийшов Vapor 4. Заради інтересу пішов подивитися, що там Perfect, а у них останній комміт був 8 травня. Грустненько.

A Crash Course in Combine
У Point Free вийшов безкоштовний курс по Combine. Відео, текстова версія, код, ось це все.

Opaque Return Types and The 'Some' Keyword in Swift
Розбираємося, що за нове ключове слово some і що таке opaque type в Swift.

Dependency injection with Storyboards and Xcode 11
У сторибордов з'явилася друга життя? Тепер можна нормально використовувати initializer injection.

Testing App Launch Time
Вже багато було сказано про те, як оптимізувати час запуску програми, але щось я не ніде особливо не бачив, як робити регресію для цього. І ось приклад як зробити тест з допомогою XCTOSSignpostMetric .

Github Actions CI for Projects Swift
Приклад того, як налаштувати Github Actions для iOS проекту.

Discover Side Tables — Weak Reference Management Concept in Swift
Як були влаштовані слабкі посилання в Swift 4+ і до цього.

On Code Reviews
Код рев'ю — це не місце, щоб проявити своїм его або принизити колегу. Це місце, де ти допомагаєш зробити код твого колеги краще з найкращими намірами.

No space left on device: Testing low storage scenarios
А як ви тестуєте, що на вашому пристрої немає вільного місця?

Quick tip: clearing your app's launch screen cache on iOS
Ох, пам'ятаю, як тільки з'явилися XIB'и для сплеш скрінів і скільки було з цим проблем.

Бібліотеки

7 Awesome Open Source SwiftUI Projects To Inspire You
Набір крутих додатків, написаних на SwiftUI.

BetterCodable
Починаємо використовувати Property Wrappers повним ходом. Наприклад, щоб спростити роботу з Codable

Gallery App for Harvest
Якщо просто приклади додатків з SwiftUI набридли, то ось Elm Architecture + SwiftUI.

John Sundell нарешті опублікував бібліотеку для створення статичних сайтів .

Відео

Головне на сьогодні: поки всі свята не закінчилися і ще є час подивитися відео з конференцій.

MobileOptimized 2019 Minsk

#Pragma Conference 2019

iOSDevCampDC 2019

ServerSide.swift 2019


? Попередній випуск: iOS дайджест #34

Опубліковано: 04/01/20 @ 08:00
Розділ Різне

Рекомендуємо:

CI/CD для фронтенда: огляд інструментів і практик для автоматизації розробки
Як ЛУН удосконалює карту новобудов: технічний шлях до 3D-моделей і AR
Ruby дайджест #34: підсумки року, Ruby 2.7.0, актуальність Ruby on Rails в 2020
Один проект і два PM: можливе ефективне керування
Predictive Software Engineering як шанс для аутсорса підвищити якість послуг