OptionSet 프로토콜 - 여러가지의 옵션을 가지거나, 옵션이 없는 경우에도 사용할 수 있게 해주는 프로토콜 Sendable 프로토콜 - ThreadSafe한 친구라는 것을 알리는 프로토콜 채택 - UIView.AnimationOptions 와 UIView.KeyframeAnimationOptions 의 차이점을 알아보고, UIView.AnimationOptions은 어떤 타입으로 정의되어 있는지, 준수하는 프로토콜은 어떤 프로토콜인지 알아봅시다 1. AnimationOptions - 블록 오브젝트 기반 애니메이션에서 사용할 수 있는 옵션이다. 2. KeyframeAnimationOptions - 키프레임 기반 애니메이션에서 사용할 수 있는 옵션이다. 3. AnimationOptions은 어떤 타입인가? - Struct타입 4. AnimationOptions이 준수하는 프로토콜은 무엇인가? - OptionSet: 여러가지의 옵션을 가지거나, 옵션이 없는 경우에도 사용할 수 있게 해주는 프로토콜 - Sendable: ThreadSafe한 객체라는 것을 알리는 프로토콜 - UIView의 transform 프로퍼티에 대해 알아보고, 해당 프로퍼티로 어떤 애니메이션 효과를 줄 수 있는지 https://developer.apple.com/documentation/uikit/uiview/1622459-transform The most direct way to manipulate your drawing—whether by movement, scaling, or rotation—is to call the functions: - translateBy(x:y:) - 위치이동 - scaleBy(x:y:) - 크기조절 - rotate(by:) - 회전 - 애니메이션에서 자주 사용하는 Timing Function의 종류에는 무엇이 있는지 알아봅시다 ![](https://i.stack.imgur.com/IIZqM.png) 아래 예시 애니메이션 두 가지를 구현해봅니다 Hint : Keyframe animation, transform