Тренды iOS–разработки на конец 2014

3870e4068ed34a41aa3d8b47b2daa968.icoПодходит к концу 2014 год, и сейчас самое время подвести итоги и выделить ключевые тренды в iOS разработке. Благодаря фреймворку ReactiveCocoa, новая парадигма программирования все чаще используется среди iOS разработчиков.Отказоустойчивость, отзывчивость, ориентированность на события и масштабируемость — вот четыре принципа реактивного программирования. Подробности можете узнать в реактивном манифесте (перевод на Хабре).

Для себя я выделил следующие преимущества реактивного подхода:

loose coupling — потоки события позволяют уменьшить связанность между различными частями кода; explicit state — состояние программы определяется набором событий, и поэтому им становится легко управлять. В качестве альтернативы реактивному подходу рекомендую посмотреть на Futures. Есть как минимум два интересных фреймворка: PromiseKit и CollapsingFuturesModel-View-ViewModel (MVVM) представляет из себя UI design pattern и призван заменить привычный всем MVC. Благодаря ReactiveCocoa, MVVM начал бурно набирать обороты. Вы можете начать свое знакомство с MVVM с этого туториала. Появление нового языка шокировало и одновременно обрадовало многих разработчиков.Все мигом кинулись осваивать новый язык, и как грибы после дождя, стали появляться различные Swift библиотеки.Пока что, из-за сырости среды разработки, язык считается непригодным для продакшн. Но это не значит, что его стоит игнорировать. Кстати, не так давно поддержка Swift появилась в AppCode. Realm представляет из себя базу данный для мобильных устройств и является заменой SQLite и CoreData.Ключевые особенности Realm:

низкий порог вхождения высокая скорость эффективное использование памяти большой набор платформ (доступна под Android, iOS, OSX) Благодаря этим особенностям и тому, что всем лень читать документацию по CoreData, Realm стал очень популярен, поэтому непременно обратите на него свое внимание. Как всегда, выход новой версии iOS можно назвать главным событием года. Разработчикам стали доступны новые возможности, из которых хочу особенно выделить следующие: Handoff — интеграция мобильного и desktop приложений; HealthKit — вся информация о здоровье пользователя в одном месте; App Extensions — появилась возможность расширять функциональность системы при помощи расширений. Теперь можно делать кастомные клавиатуры, виджеты для Today; TouchID — наконец-то появилась возможность для работы с TouchID; Metal — новый низкоуровневый фреймворк для работы с графикой; Size Classes — новый подход к построению интерфейса для устройств с разной диагональю экрана; WKWebView — новый WebView с улучшенной производительностью. Гибридные приложения получают еще один шанс. В общем, обязательно почитайте What’s New in iOS 8 и поиграйтесь с новым API. Эта информация поможет сделать ваши приложения намного привлекательнее. Начиная с iOS 8.2 появилось API для сопряжения телефона и часов от Apple. По сути Apple Watch можно считать вторым экраном телефона, так как без находящегося рядом телефона данное устройство бесполезно.Коротко про Apple Watch:

есть два набора разрешений 38mm (136w x 170h) и 42mm (156w x 195h) или в пикселях 272×340 and 312×390 нужнен iOS 8.2; есть три вида отображения: стандартный (запуск приложения с часов), glance (аналог виджета, т.е краткое представление данных приложения), кастомный UI для уведомлений; приложение для часов является расширением приложения для iOS, то есть без использования iPhone на часы ничего не установить; карты показываются в виде скриншота. т.е. скролить и зумить не выйдет; весь код выполняется на телефоне, и это значит, что нет необходимости апдейтить firmware на часах; можно использовать только storyboard; анимации можно делать только при помощи набора картинок. Симулятор для Apple Watch уже давно доступен, так что можете начинать встраивать поддержку данного девайса в свое приложение. Касаемо разработки, все должно остаться так же. Популярность Swift, MVVM и ReactiveCocoa продолжит расти, будут создаваться новые фреймворки.Что же касается рынка приложений, то для России ситуация неоднозначна. С одной стороны, приложения и устройства стали намного дороже, а с другой, многие уже обзавелись устройствами и расставаться с ними не будут. Но одно известно наверняка: количество аутсорсеров, работающих на западных клиентов, значительно увеличится.

А какие тренды выделили бы вы?

© Habrahabr.ru