Это тестовый проект, прототип клиента Вконтакте для iOS. Он состоит из главного окна с кнопкой, по нажатию которой, пользователь попадает на экран с лентой. В этом проекте можно сделать много мелких ошибок, которые приведут к вполне неочевидным результатам. Так, например, можно забыть выключить translatesAutoresizingMaskIntoConstraints - свойство UIView, которое автоматически превращает autoresizing mask в констрейнты AutoLayout. Если забыть выключить это свойство, то код позиционирования скорее всего не сработает, как предполагалось. Таких мелких деталей очень много: забыть зарегистрировать ячейки в tableView, изменить названия IBOutletов в коде, но не в сториборде, да и банально забыть внедрить зависимость у неявно развернутого свойства класса — все может привести к краху приложения. К счастью, эти все мелкие детали приходят с опытом, и чем больше практикуешь, тем меньше на них натыкаешься.
Код также включает в себя модель Post, это модель по которому строятся посты в ленте, специальный класс по работе с API Вконтакте, а также протокол, управляющий работой ленты. Код устроен так, чтобы как можно лучше, учитывая что это все-таки тестовое задание, разделить логику от UI и от работы с API. Я также хотел продемонстрировать несколько видов работы с UI - в сторибордах, чисто в коде, и в нибах.