안드로이드 개발 시 유의 사항

개발 노트 2009. 10. 19. 09:43 posted by 무병장수권력자


작성자 : 김문규
최초 작성일 : 2009.10.19

device 개발 시에는 코드 유지 보수의 효율성과 성능 최적화간의 절묘한 trade-off가 중요합니다. 물론 제작자 입장에서는 성능최적화가 최우선되어야 한다고 생각할 수 있지만, 이 경우에는 차기 모델 출시시에 더 많은 공수가 투입되어야 하기때문에 꼭 좋은 선택만은 아닙니다.

안드로이드 개발자 사이트에 보면 몇가지 권고사항이 있습니다. 딱히 안드로이드 개발에만 국한되지는 않아 보입니다. 간단하게 소개합니다. 자세한 적용은 원문을 참조하세요.
http://developer.android.com/guide/practices/design/performance.html

안드로이드 개발 시 유의 사항
1. 불필요한 임시 객체를 만들지 말아라
2. 최대한 native method를 사용하라
3. virtual > interface
Map myMap1 = new HashMap();
HashMap myMap2 = new HashMap();
후자를 사용한다.
4. static > virtual
5. 내부적으로는 getter, setter를 사용하지 않는다. direct access해라.
6. 자주 사용할 경우에는 멤버 변수를 local copy 한 후 사용한다.
    - 속도 측면에 이득이 있다.
7. constant는 final 선언을 한다.
8. enhanced for loop는 조심해서 사용한다.
   - 컨테이너의 종류에 따라 성능이 떨어질 수 있다. ArrayList에서는 무조건 사용하지 않는다.
9. (외부 공개 API가 아닌 경우에는) enum은 가급적 쓰지 마라.
10. inner class에서 접근해야 하는 변수의 경우 public화 하자. (? 이거는 잘 이해가 안되네요.)
11. float, double은 가급적 쓰지 마라. 많이 느리다.