[OSX] 애니메이션 구현 방법 선택하기

1. 회전하지 않고, 주로 정적이며 아쿠아 컨트롤을 주로 사용한다면 Cocoa View를 사용한다.

2. UI가 단순한 애니메이션을 하고 (뷰나 윈도우의 프레임 이동) 있다면 애니메이터 프록시객체를 사용할 것. 이를 사용하면 프록시 객체를 통해 프레임을 변경하는 것 만으로도 애니메이션을 만들 수 있다.

3. 아쿠아 컨트롤이 회전되어 반응하거나, 서브 컨텐츠를 표시한다면 레이어백 코코아 뷰를 사용하라 (NSView 에서 wantsLayer:YES 하고 setLayer:rootLayer로 레이어를 추가한 뷰)

4. 커스텀뷰가 프로세서를 많이 사용하거나 지연이 발생한다면 레이어 백 코코아 뷰를 사용할 것을 고려해 본다.

5. 커스텀뷰가 다양한 사용자 이벤트를 받아야 한다면 레이어 백 코코아 뷰를 사용할 것을 고려해본다.

6. 아쿠아 컨트롤에 의존하지 않는 커스텀 UI를 사용한다면 CA레이어를 직접 제어하는 것을 고려해 본다. 직접 레이어를 제어한다면, 사용자 이벤트를 다루는 모든 부분을 직접 관여하고 제어해야 한다.