티스토리 뷰

Item67에서는 최적화를 신중히 하라 말한다

덧붙여 최적화 격언 세 개를 소개하는데 모두 섣부른 최적화는 안 하는 것보다 못하다는 의미를 전달한다

섣부른 최적화라 부를 수 있는 것의 사전 조건은 잘 짜둔 구조를 헤쳐가면서 최적화를 하는 것을 의미한다

최적화라는 것은 성능 뿐만 아니라 리소스도 포함하므로 더 방대한 영역을 다룬다

최적화에 발이라도 담가보려면 자바 언어 자체의 동작 원리, JDK 버전이 올라가면서 달라져야 하는 코드 작성 방식,

JVM의 메모리 구조 + 라이브러리 + GC 등등 선제 지식이 너무 많이 필요하다

자바를 사용해서 개발 하는 것조차 쉬운 일이 아니건만 최적화를 하려면 더 깊고 넓은 지식에다가

로우 레벨까지 빠삭해야 하니 웬만한 대기업이 아니고서야 최적화에 신경 쓸 여력도 별로 없을 것이다

코드 레벨에서 찔끔 최적화는 개발자들이 신경 쓰면 가능하겠지만

그 외는 연차가 쌓였더라도 로우 레벨까지 파본 사람이 아니라면 이해조차 못 할 것 같다 

 

 

How to Optimize Java Applications and Improve Java Code

Here shows how you can confront performance problems to optimize your Java applications and why improving one's Java coding skills is important.

www.alibabacloud.com

자바 성능 최적화에 대해 개략적으로 알기 위해 읽어보면 좋을 글을 가져왔다

위 글을 참고했을 때 최적화의 전체적인 흐름은 아래와 같다

흐름만 보면 별 거 없네 싶은데 그 안의 세부 기술과 도구들을 살펴보니 어지러워진다

  1. 준비: 타겟 애플리케이션의 현 상황을 알기 위해 테스트를 돌리고 병목 지점과 최적화 가능한 부분을 찾아낸다
  2. 분석: 툴을 사용해 잠정적으로 병목 지점을 찾아낸다
  3. 튜닝: 찾아낸 병목 지점에 최적화를 가한다 (소스든 뭐시기든)
  4. 테스트: 병목 지점을 없앴는지, 원하는 성능 측정 결과에 도달했는지 테스트해본다, 도달하지 않았을 시 2-4 과정 뺑뺑이 돌린다

 

한창 개발 공부를 시작할 때 책 표지가 이뻐서 2019년에 나온 자바 최적화라는 책을 사놓고 모셔 놓은지 1년째다

다른 책이라면 언젠가 봐야지라는 생각이라도 들 텐데 얘는 엄두도 안 난다

최근 외부 교육도 들으면서 여러 책도 읽고 있는데 앞으로의 방향을 정리할 겸 나만의 로드맵을 세워봤다

내가 알고 싶은 것들, 현재 업무에 필수적이거나 도움 될 것들을 훑어보려 하니 대략 2년 정도 시간이 필요하다

그 후로는 깊이를 늘려야 하니 얼마나 더 걸릴지 모르겠는데

그 모든 것들을 이제 좀 알겠다 싶을 때 자바 최적화를 읽어보면 될 것 같다

자바 최적화는 그냥 5년 후에 새거 나오면 살 걸 그랬다

댓글
링크
글 보관함
«   2024/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
Total
Today
Yesterday