https://developer.apple.com/documentation/quartzcore/
Render, compose, and animate visual elements.
시각적 요소를 렌더, 컴포즈, 애니메이트합니다.
코어 애니메이션은 CPU에 부담을 주지 않고 앱의 느려짐 없이도 높은 프레임 속도 및 부드러은 애니메이션을 제공합니다. 애니메이션의 각 프레임을 그리기 위해 요구되는 대부분의 작업은 직접 수행해야 합니다. 스타트 포인트와 엔드 포인트와 같은 애니메이션 파라미터를 설정할 수 있으며, 코어 애니메이션은 나머지 부분을 수행하고 대부분의 작업을 전용 그래픽 하드웨어에 넘겨 렌더링을 가속화합니다. 더 자세한 내용은 Core Animation Programming Guide를 보시기 바랍니다.
Core Animation Programming Guide
https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/CoreAnimation_guide/Introduction/Introduction.html#//apple_ref/doc/uid/TP40004514
An object that manages image-based content and allows you to perform animations on that content.
이미지 기반 컨텐트를 관리하고, 해당 컨텐트에 애니메이션 수행을 가능하게 해주는 객체입니다.
UIView
의 속성인 layer
가 CALayer
이다. 레이어는 절대로 nil
이 될 수 없다.
https://velog.io/@horus222128/layer
https://velog.io/@horus222128/CALayer
이해에 도움이 많이 된 글.
https://babbab2.tistory.com/53
UIView
안에 시각적 요소를 넣을 때 가능하다면 CALayer
로 구현하는 것이 성능측면에서 더 낫다고 한다.
아래 이미지에서 화살표가 저수준으로 가는 방향.