iOS дайджест #23: потрібно більше архітектур, Apple купила Buddybuild, майбутнє face-controlled додатків

У випуску: реверс-інжиніринг home індикатора на iPhone, топ причин реджекта додатків в App Store, линтера для IB і xcodeproj, кращі статті з юніт-тестування за 2017, менеджер пакетів для Swift.

Статті

Reverse-Engineering the iPhone X Home Indicator Color
Лонгрид з дослідженням того, як змінюється колір iPhone X home. Самого реверс-інжинірингу майже немає (див. наступну статтю). З цікавого — колір в симуляторі відрізняється від кольору на реальному девайсі.

iPhone X home button
І ще одна стаття про iPhone X home indicator. На цей раз реверс-інжиніринг самої реалізації. Не бійтеся і освоюйте Hopper Disassembler, щоб подивитися, як реалізована та чи інша річ (у тому числі і в нативних додатках).

Face-controlled apps are here — and they are about to transform how we interact with our devices
Стаття про те, як зміниться взаємодія зі смартфонами з приходом додатків, які відстежують рух особи. Вже чекаю читалку, яка буде автоматично скролл текст і підлаштовуватися під твій темп читання.

The top reasons apps get on the rejected App Store
Найпопулярніші причини реджекта додатків в App Store. Не зайвим буде переглянути весь список вимог , особливо якщо плануєте реліз до певної дати.

Functional architecture for Swift
У новий рік з новими архітектурами. Натхненна Redux і RxFeedback .

RxFlow
Ще одна архітектура від творців RxSwift. На цей раз надихалися координаторами.

RIBs
Uber оформили в репозиторії свою архітектуру. Доступний код відразу під Android, iOS, з прикладу як створити RIB, зробити композитний, а також є Xcode template file.

The buddybuild team is now part of Apple
Ніяк не доходили руки спробувати цей CI, і вже не вийде, тому що їх купив Apple, і вони закрили реєстрацію нових користувачів (старі можуть користуватися до 1 березня 2018). Чекаємо покращеного Xcode Server на найближчому WWDC. Відразу з'явилася стаття з альтернативами .

Build a Taylor Swift detector with the TensorFlow Object Detection API, ML Engine, and Swift
Інтернет вже рясніє туториалами, як зробити додатки для розпізнавання чого-небудь з вже готовою моделлю. Тут же описано, як натренувати свою модель і використовувати її в додатку.

A complete list of articles on Unit Testing with Swift from 2017
Список найбільш популярних статей про юніт-тестування за 2017 рік. Статей багато, тому можна використовувати як довідник і шукати за ключовими словами потрібну статтю ??

Smart Color Invert And Your iOS Apps
Не забуваємо і про accessibility. Стаття про те, як адаптувати режим інверсії кольору в своєму додатку.

Password autofill for iOS Apps for faster login
У iOS 11 з'явилася можливість вставляти пароль Keychain прямо в додатку. Дій не так багато, а користувачам зручно.

Cancellation Token
Cancellation Token — досить поширений патерн (використовується в Bolts, RxSwift). Розбираємося, як створити, використовувати токен, а також про альтернативи.

Tools

xcode.swift
Аккаунт організації, яка займається tooling'ом. В їх комплекті є білд-система схожа на make, лінтер і інші утиліти для роботи з xcodeproj.

Mint
Менеджер пакетів для запуску скриптів на Swift. Такий собі Brew на свифте і для свіфта.

topanga
Исходники джейлбрейка iOS 11 (до 11.1.2).

IBLinter
Лінтер для xib, storyboards. Спробував на парі проектів — безрезультатно. Відпишіться в коментах, якщо комусь допомогло.

Quicktype
Плагін для Xcode, який створює Codable структуру на основі JSON схеми.

Online Swift Playground
Тепер для вивчення Swift досить тільки браузера. Поки в беті. Для участі треба зашарити посаду і залогуватися через GitHub.

Beak
Писати скрипти на Swift тепер ще простіше. Можна запустити будь-яку публічну функцію прямо з терміналу.


Непоганий порада — використовуйте `e` в lldv замість `po`, щоб вивести більше інформації про об'єкт:

For the longest time I just used «po» in lldb to examine objects but «e» just adds a whole new level to debugging !


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

Опубліковано: 26/01/18 @ 11:00
Розділ Різне

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

Як впливати без влади — радить TPM з Amazon
DOU Hobby: Музичні інструменти власними руками — флейти, калімби та дримби
Опитування по мовам #9: Go і TypeScript увійшли у вищу лігу, Kotlin варто сприймати серйозно
Як я працюю: Ярослав Пернеровский, Test Automation Lead, GlobalLogic
Java дайджест #37: реліз Flyway 5.0.0 і нове життя JEE (EE4J)