
McLaughlin Brett , Flanagan David 저 / Oreilly & Associates Inc / 2004년 06월 / ISBN: 0596007388 / 페이지: 177
(사진 출처는 amazon,구매는 Yes24)
Java 6.0이 나온 마당에 왠 뒷북이냐고 한다면 할 말은 없지만, Java 1.4에서 5.0으로 넘어가는 와중에 알아야 할 중요한 내용들을 습득하기 참 좋은 책이다. 의외로 강컴이나 여타 국내 인터넷 몰에서 이 책을 찾아보기가 힘드네. 잘 수입되지도 않는 이 원서를 힘들게 항공주문해서 읽을 필요까지야 있을까 싶지만, 나에겐 아주 좋았다. 학교 도서관에서 다른 책 찾으러갔다가 그냥 표지가 이뻐서 집은 것 치고는 큰 수확이었다. 아마존 별점도 4.5개나 되고. :)
이 책은 Java 5.0으로 넘어오면서 언어적으로 크게 바뀐 점들에 대해 소개하고 있다. 다들 익히 들어서 아는 generics, annotation, varargs, for-in loop, enum, static import 외에 threading 처리, collection class의 변화, formatting을 다루고 있다. 이미 Java 5.0에 추가된 요소들에 대해서는 어느정도 알고 있었지만, 뭔가 아리까리한 점이랄 지 기존 코드와 충돌나지 않을까 하는 점들에 대해서 간단하게 소개하고 있기 때문에 짧은 페이지에 비해서 다루는 정보의 양이 꽤 많았다. 금방 읽을 수 있을 줄 알았는데 (책 거의 1/3이 소스코드라서 더욱 그렇게 생각했다.) 그렇게 만만한 책은 아니었다. 다만 내부의 구현등에 대한 자세한 내용이 아닌, 현상 위주로 설명하고 있기 때문에 "왜 그렇게 되는가?" 로 깊이 들어가고자 한다면 저자는 책에서 Java in a nutshell을 보라고 이야기하고 있다. (두 명의 저자 중 한 사람이 그 책의 저자이기 때문에, 책 선전하는 것 같다.)
이 책의 대상 독자층은 상당히 좁다고 할 수 있다. Java 1.4의 API에 대해서 어느정도 알고 있어야 왜 이 책에서 다루는 내용이 뭔가 새로운 것이고, 뭐가 추가되었구나를 알 수 있다. Java에 익숙하지 않다면, 이 책은 거의 도움이 되지 않을 것이다. 대신, Java 1.4까지 익숙하게 써 왔고, 5.0으로 넘어가고자 하는 개발자에게는 꽤 훌륭한 선택이라고 생각한다. 그러나, 책이 나온게 2004년이니 지금 이 시점에 이 책을 읽겠다는 것은 공부를 꽤나 게을리했다는 증거! 나는 인터넷에서 접한 짤막짤막한 정보로 얇게 알던 지식에 좀 더 두터운 살을 입힐 수 있었다.
국내에서 접하기는 그다지 쉬운 책은 아니지만, 기회가 닿는다면 읽어보길 권한다. Google book search에서 맛배기로 볼 수도 있다. 이 A developer's notebook 시리즈는 처음 접하는데, 읽기 편한 전개로 되어 있어서 읽기도 좋다. 시리즈 editor가 서문에서 "강의를 위한 시리즈가 아닌, 문제 해결을 위한 시리즈이다. 강의를 원하면 동물 시리즈나 nutshell을 봐라." 라고 한 이야기가 꽤 설득력이 있다. 이 시리즈의 다른 책들도 읽어봐야겠다.




덧글
Ego君 2007/01/15 00:46 # 답글
아직 JAVA의 햇병아리라서 저 책을 볼수 있을지 미지수군요. 제가 JAVA책을 5.0버전때에 나온 것을 봤으니까요.
오리대마왕 2007/01/15 01:33 # 답글
그렇다면 굳이 이 책을 읽으실 필요는 없겠네요, 이미 그 책에 나와있는 내용일 테니까요.
세라딘 2007/01/15 13:02 # 삭제 답글
http://java.sun.com/javase/6/webnotes/features.html이건 6.0 것이지만... 이런 문서랑 차이점이 뭐예요?
구해서 볼만 할라나 ^^
오리대마왕 2007/01/15 13:20 # 답글
내용면에서 '저 책에는 엄청난 정보들이 가득 들어있다!'는 아니지만, 같은 정보를 얼마나 더 쉽게 접할 수 있을까 하는 점에서는 책이 훨씬 좋죠."static import를 통해 다른 class의 static member 변수를 쉽게 사용할 수 있다" 라는 한 문장과, "자, 그럼 static import 가 우리 코드를 어떻게 개선시킬 수 있는 지 몇가지 예로 알아보자." 의 차이점 정도랄까요?
이미 알고 있는 내용이라면 굳이 다시 읽을 필요는 없겠지만, 꽤 흥미로운 내용이 많아요.