UIView — это основной строительный блок пользовательского интерфейса в iOS. Он является подклассом NSResponder и обрабатывает события касания, управляет подпредставлениями, обрабатывает компоновку и отрисовку содержимого.
CALayer — это слой, который обеспечивает визуальное представление содержимого UIView. Он не участвует в обработке событий и компоновке, но управляет такими свойствами, как положение, размер, прозрачность, границы и тени.
UIView существует, чтобы предоставить высокоуровневую абстракцию для взаимодействия с пользователем и управления визуальным представлением, которое обеспечивает CALayer. UIView делегирует большинство своих задач отрисовки связанному с ним CALayer, но добавляет функциональность по обработке событий, управлению иерархией подпредставлений и поддержке Auto Layout/Constraint-based Layout.
Вкратце: CALayer отвечает за визуальное представление, а UIView добавляет интерактивность и управление иерархией.
swift