Мне было проще создавать собственные пользовательские классы макетов, которые создают макеты только для моих представлений и не навязывают сложный протокол, такой как NSTableViewDataSource и тому подобное, который затрудняет программирование анимации. Мне нравится всегда точно знать, где находятся мои представления, полная иерархия каждого представления, и я не люблю синхронизировать модель с моими представлениями, чтобы хранить данные о самих представлениях. На мой взгляд, объекты на экране - это единственные объекты, которые я люблю создавать как программист. Я хочу прямого декларативного контроля над ними, вроде игрового программиста. Подклассифицируя представление прокрутки напрямую и следуя очень простым правилам макета вне обычных методов layoutSubviews
Какао, чтобы избежать неожиданных макетов, я смог лучше контролировать свои анимации и делать более сложные и плавные анимации. Надеюсь, что это вдохновит кого-то на то же.