Android 개발 10계명
1. Application 구성요소 간에 데이터를 주고 받을 때, Extra보다는 Parcelable를 사용하라
2. UI와 관련된 코드를 제외한 다른 코드는 UI Thread가 아닌 별개의 Thread에서 동작켜라. (ANR의 80% 이유)
3. Object Cache(Object Pool 패턴)를 적극 활용하라.
4. List Adapter 내부에 오랜 시간이 소요되는 연산을 수행하지 마라
5. setTag 메소드는 유용하다. Resource ID를 사용하는 장점을 살려라. (findViewById보다 SetTag와 ViewHolder 패턴을 사용)
6. Application 내부에서 메세지를 주고 받을 경우, Intent와 BroadcastReceiver를 활용하라
7. 가능하다면 Soft Reference를 사용하라. 메모리를 많이 사용하는 경우에는 더욱 필요하다.
8. Static 멤버 변수를 사용할 때는 Memory Leak을 생각하라
9. BroadcastReceiver는 UI Thread에서 작동한다(ANR의 20%의 이유)
10. 코딩 전에 UX와 UI 설계를 잘하라.
Loop에서 새로운 Object 생성은 피해라
Native 메소드는 C/C++등으로 구현되어 Java 코드보다 10~100배 빨리 실행됨
내부적인 gettters와 setters는 피해라
멤버 변수를 지역 변수로 가져와서 사용하라 (int a = this.a;)
Constants(상수)를 Final로 선언하라
컴파일 때 final로 설정되지 않으면 field lookup을 사용하여 접근하기 때문에 속도가 느리다.
Enums 사용을 피하라
Enums의 접근 속도가 느리기 때문에 지속적 자주 사용할 때는 local 변수로 사용
'Android > Theory' 카테고리의 다른 글
Memory issue (0) | 2013.04.17 |
---|---|
Binder Driver (0) | 2013.04.17 |
Memory (0) | 2013.04.17 |
Thread (0) | 2013.04.17 |
Window (0) | 2013.04.16 |
댓글