В выпуске: реверс-инжиниринг 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 rejected on the App Store
Самые популярные причины реджекта приложений в App Store. Не лишним будет просмотреть весь список требований, особенно если планируете релиз к определенной дате.
Functional architecture for Swift
В новый год с новыми архитектурами. Вдохновлена Reduxи RxFeedback.
RxFlow
Еще одна архитектура от создателей RxSwift. На этот раз вдохновлялись координаторами.
RIBs
Uber оформили в репозитории свою архитектуру. Доступен код сразу под Android, iOS, с примера как создать RIB, сделать композитный, а также есть Xcode file template.
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 !November 23, 2017
← Предыдущий выпуск: iOS дайджест #22