
Подходит к концу 2014 год, и сейчас самое время подвести итоги и выделить ключевые тренды в iOS разработке.
Functional Reactive Programming
Благодаря фреймворку
ReactiveCocoa, новая парадигма программирования все чаще используется среди iOS разработчиков.
Отказоустойчивость, отзывчивость, ориентированность на события и масштабируемость — вот четыре принципа реактивного программирования. Подробности можете узнать в
реактивном манифесте (
перевод на Хабре).
Для себя я выделил следующие преимущества реактивного подхода:
- loose coupling — потоки события позволяют уменьшить связанность между различными частями кода;
- explicit state — состояние программы определяется набором событий, и поэтому им становится легко управлять.
В качестве альтернативы реактивному подходу рекомендую посмотреть на
Futures. Есть как минимум два интересных фреймворка:
PromiseKit и
CollapsingFutures