이번 핑거아이즈의 속도 개선을 위한 전반적인 코드 리팩토링 시에 고려했던 최적화 항목입니다. 위의 항목중 2/3정도만 반영되었고.. 나머지는 반영하지 못했습니다. 코드 최적화 작업 시간을 따로 마련해 놓지 말고.. 코드 작성 시에 미리 미리 고려해 적용해 놓아야한다는 당연한 진리를 새삼 깨닫게 되었습니다.
- 가능하다면 Sprite 대신에 Shape 사용하기
- cacheAsBitmap 적절히 사용하기
- 라벨에 대해 TextField 보다는 FTE(Flash Text Engine) 사용하기
- 가능하다면 mouseChildren, mouseEnable을 false 지정하기
- Array 대신 Vector.
사용하기 - 드로잉 API(drawPath, drawGraphicsData, drawTriangles) 사용하기
- object cache 전략 사용하기
- 폴리곤 내부 판정은 hitTestPoint보다 직접 구현해 사용하기
- 파생될 일이 없는 클래스는 final로 지정하기
- floor, ceil은 int 형변환으로 대체하기(floor(1.5) -> int(1.5), ceil(1.5) -> int(1.5)+1)
- abs보다는 직접 -1을 곱하는 방식으로 처리하기
- for 반복문 대신 for each 문 사용하기
여하튼… 위의 최적화 코드등을 통해 기존 속도 대비 10%정도 향상된듯합니다만… 체감하기는 어려운 향상인지라 다소 아쉬움이 많이 남습니다.

