Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.
RetroTech 팟캐스트 44BITS 팟캐스트

[Book] 자바 성능을 결정짓는 코딩 습관과 튜닝 이야기

자바 성능을 결정짓는 코딩 습관과 튜닝 이야기

자바 성능을 결정짓는 코딩 습관과 튜닝 이야기 - 10점
이상민 지음/한빛미디어



제목이 인상적이어서 관심을 약간 가지고 있었지만 Blog2Book란 시리즈가 처음 나온 시리즈라 그냥 이름정도만 알고 있던 책이었는데 친한 형의 동생분이 썼다고 해서 관심을 더 가지게 되었었는데 얼마전에 OKJSP에서 이상민님이 Performance and Java Tuning 세미나를 하셔서 갔다가 왔는데 관심을 많이 가지고 있던 내용이라(내가 튜닝쪽으로 나가겠다는 것은 아니지만...) 무척 맘에 들어서 오자마자 책을 읽었다.

지금 동시에 여러가지 책을 보고 있긴 했는데 책의 내용은 너무 맘에 들었다. 제목에서 느껴지는 대로 이책은 레퍼런스책이나 자바 성능에 대해서 세세하게 설명하고 있는 책은 아니다. 자바가 성능을 내는데 있어서 꼭 필요한 부분이나 주의해야 하는 부분을 팁처럼 제공하는 책인데 약간은 에세이같은 느낌으로 편히 다가갈수 있게 되어 있어서 출퇴근시간에 부담없이 읽을 수 있었다. (책읽을때는 코딩을 따라하는 편은 아니라서...)



내가 가장 좋았던 점은 내가 궁금해 하던 부분을 속 시원히 긁어 주었다는 것이다. 그리고 마침 JSP프로젝트 하나가 막바지인데 내가 무엇을 잘못했는지 내가 사용한 것과 다른 방법으로 했을때에 어떤 차이가 나는지... 그리고 웹사이트 성능을 파악하기 위해 어떤 것을 해야 하는지 피부로 확 다가왔다는 점이 크다.



때때로 망각하고 있기는 하지만 자바에 대해서 얼마나 쌩초보인지 체감하고 있는 상황인데 단순 팁에 대한 부분으로 그치는 것뿐만 아니라 J2EE에 대한 패턴이나 MVC같은 기본적인 부분에 대한 지적도 등한시 하지 않았고 다른 데서는 보기 어려운 GC(Gabage Collect)에 대한 자세한 정리와 성능을 테스트 하기 위해서 어떤 방법으로 접근해야 하는지 세세하게 설명해 주고 있다.


특히 나는 성경이 까칠한 편이라 남을 잘 안믿는 탓에 머가 좋다. 그러면 "왜?"라는 궁금함을 많이 가지는 편인데 항상 그렇게 해야 된다는 걸 을으면서 세부 내용을 잘 알지 못했던 String사용에 있어서 +를 이용한 결합법과 StringBuffer의 차이점등을 메모리와 시간으로 보여주니까 여실히 느낄수 있었다. 그리고 Collection은 다 비스므리 해 보이는데 어떤걸 쓰는게 좋을지에 대한 부분들을 속도로 비교해 주니까 그냥 인터넷에서 머가 좋아요 하는 것보다 훨씬 마음에 와닿았다.

내가 맨날 놓치는 소스 곳곳에 남겨진 System.out.println의 리소스 낭비나 Resultset이 돌아가는 방식, XML의 성능비교 include 방식에 따른 차이등에 대해서 실제적인 비교 데이터를 제공하니까 이해하기가 너무 좋았다. 내가 이해하기 어려웠던 부분이 없었던 것은 아니지만 초보자들도 이해하기 아주 쉽게 되어 있고 항상 궁금했던 내부의 돌아가는 방식에 대해서 바로 적용할 수 있는 또는 가장 많이 접하는 부분위주로 설명이 상당히 잘 되어 있다.




내가 필요한 부분에 대해서는 확실히 이해하고 나중에 적용하려면 좀더 다양한 테스트를 돌려보고 정리해서 포스트를 하게 되겠지만 책한권 읽은 것 만으로도 적용할 수 있는 부분이 너무 많이 느껴져서 행복할 따름이다.

솔직히 회사에서 책을 사준다길래 구입했는데 줄을 많이 그어서 어차피 한번에 적용할 수는 없기 때문에 두고두고 볼라면 따로 사서 회사책이라 바꿔치기해야겠다. 별 5개가 아깝지 않은....
2008/07/31 01:17 2008/07/31 01:17