Мы за использование сторонних библиотек. Изобретать свои велосипеды, если задача уже была качественно решена кем-то еще - как минимум бессмысленно.
Перед тем, как добавить в проект еще одну зависимость, мысленно пройдитесь по короткому чек-листу:
- Есть ли среди стандартного стека используемых в Rambler&Co библиотек то, что может решить вашу задачу?
- Достаточно ли существенна текущая задача, чтобы внедрять в проект новый компонент, с учетом времени на инспекцию его кода?
- Насколько качественно написана библиотека?
Эти простые вопросы помогут поддерживать общее количество зависимостей в разумных пределах и не тащить в проект бесполезные зависимости.
- Typhoon - DI контейнер.
- MagicalRecord - реализация ActiveRecord для CoreData.
- Nimbus/Models - реализация datasources для работы с UITableView/UICollectionView.
- CocoaLumberjack - библиотека для логирования
- SDWebImage - загрузка web изображений.
- RestKit/Mapping - библиотека для маппинга.
- EasyMapping - библиотека для маппинга.
- PureLayout - работа с autolayout в коде.
- OCMock - мокирование объектов.
- OHHTTPStubs - работа с сетевыми стабами.
Отдельное важное уточнение - для написания юнит-тестов используется ванильный XCTest.