В течение недели топовые iOS-разработчики Руслан Гуменный и Саша Черный, а также руководитель мобильного направления Aviasales Иван Козлов собирают для вас интересные и полезные ссылки на статьи, необходимые для прочтения каждому начинающему и опытному разработчику. В каждом выпуске – новости, коды, инструменты, дизайн и прочее.
Интересный феномен: хороший разработчик, который напрочь игнорирует Swift в 2017 году. Аргументация стандартная: Xcode 8 падает, инструменты оставляют желать лучшего, размер приложения больше, синтаксис не устаканился. Всё так, всё так. Однако, точно ли это повод не писать на Swift продакшн код? Вот что это, опытность и взвешенность, или инертность?
Довелось как-то работать с человеком, который писал для J2ME. Долго писал. Ему намекали, что дело тупиковое, что если уж мобильные и Java, то Android зовёт упасть в свои объятия. Товарищ спёкся. Морально, в первую очередь. Широта взглядов и открытость новому — прививка от неопредёленности будущего.
The Ultimate Guide to Branch Products
Если вы что-то слышали про Branch, то, возможно, знаете, что они предоставляют систему дип линков. На самом деле у Branch сейчас есть целый арсенал продуктов для любой стадии развития приложения.
HomePod firmware provides detailed look at iPhone 8 screen layout
Скандалы, интриги, расследования. Вопрос один: это вообще законно? Скоро узнаем. Ждать осталось недолго.
Apple releases fourth iOS 11 public beta for iPhone and iPad
Паблик бета 4 в бою. Хуже не стало. И это хорошо.
Неделя для подачи доклада на MBLTdev 2017
Точнее, 9 дней. Но дедлайн близко (ждём заявки до 20.08).
iOS.Ninja
Новый канал для iOS-разработчиков, объединённый. Если вдруг подзабылось, каналов целый ворох на http://ios-channels.ru.
Не CoreML единым
Нейросеть на Swift, реализующая XOR, но без использования CoreML, а через BNNS.
MAChineLearning
Ещё один заход по ML. Специально для macOS-разработчиков. Вторую неделю подряд появляется что-то специфическое для macOS. Так, глядишь, и синхронизацию CoreData через iCloud починят.
Disk
Предлагается абстракция над некоторыми дисковыми операциями.
Managing view controller complexity in tvOS and iOS projects
В процессе работы над своим AVPlayerViewController ребята сделали правильные выводы насчёт архитектуры. Стейт надо изолировать!
Enforce Exclusive Access to Memory (Swift-evolution)
Concurrency — это непросто. Если вам интересно узнать, что такое overlapping accesses, чем он плох и как с ним предлагают жить, читайте этот proposal.
UI-тесты для iOS
Мобильные проекты обычно небольшие и недолго живущие, люди уже начинают забывать, как выглядит Objective-C, а некоторые его даже не видели. И вот прекрасная статья про проект, которому уже 6 лет. 99% кода написано на Objective-C, много чего подкручено это здорово! Конечно, такую кодовую базу надо покрывать тестами, и парни поделились тем, как они тестируют UI. Если коротко, то это XCTest и добавление JSON с описанием UI-элементов в accessibilityValue.
TamTam: как мы делали новый мессенджер
Немного про то, как устроен мессенджер от Одноклассников.
Sequel Pro
А вот немножечко UI для работы с mySQL, MariaDB. Можно, конечно, и образ с сайта скачать, но из исходников-то правомернее будет.
SQLite.viewer
Поднимает сервер который позволяет работать с SQLite базой приложения из браузера. Напомнило PonyDebugger.
App Store Insights
Немного занимательных фактов о магазинах приложений.
Предыдущие выпуски Digest MBLTDEV и подписка доступны на официальном сайте. Всё бесплатно и никакого спама, честно!