안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
C/C++을 하면 뭐 예를들어 아래와 같이 많이 쓰게 되죠
#ifdef DEBUG
Log("어쩌고");
#endif
Java는 전처리문 같은게 없으니 억지로 만들자면
private static final boolean DEBUG = false;
if (DEBUG) {
Log("어쩌고");
}
위와 같은 식으로 만드는 걸로 아는데
문제는 왠지 if (DEBUG)는 엄밀히 말해 "전처리문"은 아니니깐
이런 식으로 짜면 릴리즈 버젼에서도 매번 쓸때없이 if 조건을 체크하게 되어서 프로그램이 느려질 것 같은 기분이 들죠...
그래서 저는 기분상(?) 항상 디버깅 코드에 주석을 쳤다가 지웠다가 하는데 이제는 더 이상 귀찮아서 이짓을 못하겠더라구요...
제가 궁금한 것은 Java가 컴파일 할 때,
위와 같이 runtime에 바뀔리가 없는 if 문은 알아서 최적화처리 (그러니깐 저 코드를 그냥 무시해버리고 컴파일) 해주는 건지...
뭐... 당연히 그 정도 기초적인 최적화는 알아서 하겠지 싶기는 한데
불필요한 저의 결벽증과 불안감을 극복하고 조금이라도 더 편하게 짜고 싶어서
잘 아시는 분들에게 여쭤봅니다.




if문이 1초에 몇만개 추가로 타지 않는 이상은 그리 안느려 질것 같은데영