63. ReactiveCocoa
✓ Замена KVO
✓ Элементы функционального
программирования в ObjC
✓ Меньше изменяемого
состояния -> меньше багов
- Крутая кривая обучения
- Слишком много блоков в коде
64. –Alex A, iOS team lead
“Зачем мы засунули RAC и не можем
высунуть?”
70. Проблемы с self в ObjC
• self захватывается по сильной ссылке
• Доступ к _ivar происходит через неявный self
^ { NSLog(@"%@", _ivar); };
^ { NSLog(@"%@", self->_ivar); };
• Как результат циклическая ссылка если блок
сохранился как в поле объекта
72. @weakself
• Безопасное использование self в блоках:
слабая ссылка пока блок не вызван и
сильная во время вызова
• self называется self
• Проверка в рантайме на доступ к _ivar в
блоках через неявный self
https://habrahabr.ru/company/viber/blog/232185/