Лекция 8 начинается с очень большой теоретической части.
Протоколы — это способ взаимодействия между не взаимносвязанными проектами, в iOS в основном используются для делегирования функционала (delegates
) и «подкачки данных» (data sources
). Протоколы декларируют, какие свойства и методы могут и должны существовать в другом классе, чтобы быть доступны декларирующему протоколы классу.
Блоки (blocks
) инкапсулируют куски кода, которые могут передаваться как объекты. Специальное внимание следует уделять коду внутри блоков, который нуждается в доступе к переменным и объектам за пределами блока.
Анимация views
может быть выполнена путем анимации их свойств напрямую или – новое в iOS 7 – на основе «физики» объектов. Если анимируются свойства view
, вам необходимо указать время анимации и конечное состояние свойств объекта. Для динамической анимации вы определяете «физические свойства» view
и действующие на него силы, возможно, со стороны других views
.
Конец лекции — это демонстрация, объясняющая динамическую анимацию более детально на примере игры типа «Тетрис».
Код приложения Dropit для этой лекции доступен здесь.
Сама лекция, а также слайды на английском языке доступны через iTunes called “8. Protocols, Blocks, and Animation”.
Русский неавторизованный конспект лекции 8, хронометрированный через каждые 5 минут, представлен в PDF — файле.
Лекция 8 CS193P Fall 2013 - Winter 2014 All.pdf