티스토리 뷰

쓸모없는 객체생성 피하기

- String 대신 StringBuffer 사용

- Integer 배열보단 int배열 사용하기

- 다차원 배열보단 1차원 배열 사용하기



static의 적절한 사용

- 인스턴스 변수에 접근할 일이 없을 땐 static 메소드를 선언하여 사용하면

  15~20%의 성능개선이 가능하다.



상수에는 static final을 사용

- 변하지 않는 상수를 선언할 때에는 static final로 선언하는 것과 static으로 선언하는 것은

   저장되고 참조되는 위치가 달라지기 때문에 static final이 접근속도가 훨씬 빠르다.



내부에서는 getter와 setter를 피하자

- 인스턴스 변수에 직접 접근하는 것이 getter&setter보다 3~7배는 빠르다



for-each문을 사용하자

- Collection에서 제공되는 클래스들은 for-each가 빠르다. 

   단 ArrayList는 일반 for문이 더 빠르다.



private Inner 클래스의 private 변수 접근을 피하자

- VM에서는 내부클래스와 외부클래스는 다른 클래스로 인식한다.

  그러므로 내부클래스가 외부클래스의 private 변수로 접근하는 것은 getter&setter를

  사용하는 것처럼 성능저하가 일어난다.



소수점 연산을 피하자

- 안드로이드에서는 정수 연산보다 소수점 연산이 2배 느리다.

- double이 float보다 메모리 공간을 2배나 차지하므로 왠만하면 float를 사용하자



native 메소드를 사용할 땐 조심하자

- 안드로이드 NDK를 사용한 native 코드 호출은 JIT 컴파일러가 최적화도 못하고,

   아키텍쳐에 따라 컴파일을 별도로 진행하는 경우도 있다.



댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함