어떤 예시가 좋을까..
예를 들면 새로운 리스트형 자료구조를 만들때
컨테이너의 크기를 알고 있다면 미리 초기화 시켜주는 예시를 들면 될까..
눈에띌만큼 대단한 성능개선은 없어도 이런거 신경쓰면 개미눈물만큼이라도 빨라질거같은데
굳이 초기화시킬때 arr.length 같은거 붙여주면 지저분하다고 안넣어주거나
혹은 문자열 보간을 할 때 박싱 언박싱을 피하려면 ToString()으로 미리 변환시켜두라는 지침도
안예쁘다고 굳이 적용 안하는 경우도 봤는데
어떤게 나은 코딩 습관일까?
기본적으로는 최적화는 성능이 더 필요할때 시도하는게 좋음
막상 실제 직장에서 프로덕션 코드 만지면서 일하면 깔끔한 코드, 마이너 최적화 둘 다 신경 못 쓰게 되는 경우가 다반사
프로파일링 없는 최적화는 병신짓임 - dc App
저 깊숙한 구현체 내부에선 그냥 최적화 미친듯이 해야지 할 실력만 된다면
Premature optimization is the root of all evil.
이른 최적화 하지마 최적화 코드 짜면 주석 잘 적어 놔야
프로파일링부터 하는 습관
임베디드 할 거 아니면, 일단 최대한 가독성이 좋고 구조를 간단하게 유지하도록 짜고, 나중에 프로파일링 해서, 성능 이슈가 일어나는 부분 파악해서, 최적화하면 됨.