본문 바로가기
BOOKS BOOKS BOOKS

코드를 통해 본 빵형의 실전 자바 JAVA

by 19810721 2020. 6. 6.

코드를 통해 본 빵형의 실전 자바 JAVA

 

책에도 나이가 있다면..... 뭐 숨길 것도 없이 아재다.

 

대부분 어떤 자바 기본서를 만나든 예전 C 언어 시절부터 시작해서 자바가 이런 저런 역사 속에서 Blah~Blah~ 풀어가며 궁금한 내용은 나오지 않고 모든 책이 무슨 약속이라도 한 듯, ‘자바개론을 펼치는데, 이 책은 그 내용에 오직 2 페이지만 할당했다. ‘이거 너무한데라는 생각이 들기도 했지만 아직 800페이지가 남았다. 끝에 가서 알게 되지만 이 책은 군살이 하나 없이 담백하게 개발자에게 필요한 내용만 담아낸 책이라는 것을 첫 페이지부터 증명해낸다.

 

일반적으로 책을 쓰는 저자에게 느끼는 가장 큰 배신감은 바로 지면을 핑계로 더 이상의 자세한 설명은 생략한다를 내세우는 것이다. 중요한 개념이 나오고 용어가 도입되어 이제 서술의 영역이구나 하고 몰입을 해야 할 때, 이것은 ## 이다, 그것은 ## 을 통해 알 수 있다. 라는 식으로 독자가 책에서 바라는 내용을 무시하며 부실하게 채우기 일쑤다. 단순히 영어 사전에서 용어를 번역한 수준으로 그치며, API 한 두개 소개하고 한 챕터를 다 설명했다고 하는 것에 많이 속아 오지 않았나.. IT 서적은 기술을 깊게 파고들면 파고들수록 활자로 표현하는데 한계가 있어서 어느 정도 이해는 한다. 그러나 지금 소개하는 이 책은 ## 이 있다. 에서 끝나지 않고 ## 을 보여줄께. 로 지면을 꽉꽉 채우고 심지어 실습까지 하라고 강요 아닌 강요를 한다. 그렇다고 부담은 갖지 말자. 책이 두꺼울수록 얻어 갈 수 있는 것이 많다고 생각하자. 뒤에 잉크가 묻어 나오지 않을까 걱정될 만큼 얇은 종이를 사용한 책도 아니다. 개발자의 무거운 삶의 무게를 받아들이자.

 

이 책을 처음부터 마지막 페이지까지 살펴보며 느낀 점은 저자의 타임라인 즉, 시간 축이 이 책에 그대로 녹아 담겨 있다는 느낌이었다. 어느 한 기능을 설명해도 단순 소개로 그치지 않고 이전 버전에서 활용과 최신 버전의 개정된 기능을 동시에 소개하고 사용법을 상세히 설명한다. 이렇게 서술하는 책을 본 적도 없고, 이러한 서술 방법은 온라인 검색 구글링을 통해 어떠한 기능이나 명령어를 검색할 때, 검색 결과로 보고 있는 것이 어떤 버전에서 사용되던 것이며, 현재 버전에서는 어떤 문제들이 해결되거나 무엇이 개선되었는가를 크로스 체크로 알게 한다. 이는 독자가 마치 시간 순으로 간접 경험을 하여 자연스럽게 소개 내용을 이해 할 수 있도록 이끌어 주는 매력이 있다. 기술 서적에서는 만나지 못했던 이러한 서술 방식을 나는 “Birds View Description” 이라고 칭하고 싶다.

 

이 책은 하나의 프로그래밍 언어를 저자의 10 년 이상 경력과 그 동안의 경험을 모두 담기 위해 1 년의 시간을 들여 서술하며, 기존의 방법과 문제를 피하기 위해 개선된 코드와 최신 버전에 새로 도입된 방법을 모두 보여준다. 그래서 어쩌면 이렇게 길게 설명할 필요가 있을까 싶지만, 입문 프로그래머들에게는 자바 언어를 떠나서 프로그래밍 훈련 교재로도 훌륭하다고 보여진다.

 

사실 이 책을 보게 된 나는 자바 언어가 이미 익숙한 상태이다 보니 앞 부분의 문법과 JCF 까지는 대강 훑어보는 수준으로 넘어갔다. 처음 감탄사가 튀어 나온 부분은 바로 용어 해석이나 설명으로 들어갔으면 어려웠을 부분, 즉 모던 자바에서 새롭게 도입된 개념인 Lambda 을 설명하는 부분이다. 앞서 이미 자세한 설명을 마친 Annotation, Anonymous Inner Class 로 바로 Functional Interface 를 너무나 쉽게 이해시킨 후, 바로 Lambda 도입의 당위성과 문법과 활용을 풀어낸다. API 를 그냥 번역해서 나열하는 일반적인 책들과는 다른 설명방식이다. 독자에게 Know 를 넘어, Understand 에 도달하자고 반복적으로 독려한다.

 

그럼에도, 이해되지 않으면 참조하라며 구 버전의 내용을 보여주고, 얼마나 비효율적인가를 통해 축약의 과정과 결과를 보여주는 내용을 반복하니, 굳이 알려고 애쓰지 않아도 체득이 되어 버린다. 이해를 유도하고 다양한 API 응용법을 소개하니, 자바만 수 년 째인 나조차도 연필을 들고 핵심적인 내용과 미처 알지 못했던 것에 체크 표시하기가 바쁘게 되었다. 기초 책이라고 얕본 일에 호되게 당한 것이다.

 

IDE 에서 마우스를 가져다 대면 수 많은 사용법 팁이 자동 추천되는데, 그 곳에 나오지만 낯선 용어들 때문에 활용치 못했던 부분들에 대해서 친절하게 해석과 동시에 사용법을 안내한다. 지금까지 만난 기술책들과 다르다. 다음 책은 Spring 책을 기획 중이라고 하는데, 기대보다는 걱정이 앞선다. 이 저자는 책을 쓰다가 고생이 심해, 급 노화되어 버릴 것 같다.

 

최근 다양한 코딩테스트 플랫폼조차 개발자는 기본으로 알고 있다가정하고 풀어야 하는 문제들을 출제하는데, 나조차 최근에 알게 되거나 익숙해진 기능들을 그냥 담담하게 설명해준다. 요즘 말로 꿀팁인데, 이 책에선 설명이 너무 심심하다. 그래서 중요한지 모르고 그냥 지나칠 수도 있겠다. 800여 페이지를 읽어 오는데 내 뱉은 감탄사가 아깝지 않다. 이 책의 저자는 중요도를 표시하긴 했는데, 겨우 볼드체이다. . 심심한 양반이다. 그렇다고 그냥 넘길 일은 아니다. 진짜 중요한 부분에 Ctrl + B 키를 눌렀을 양반이니까

 

각 단원 끝마다 참고서처럼 연습문제가 있는데, 나는 그냥 패스를 했지만, 여러분은 꼭 풀어 보기를 강권한다. 시간을 아끼지 말자. 오늘 여러분이 이 책에 투자하는 잠깐의 시간은 이 책을 준비한 저자의 10 년 이상을 압축해서 받아갈 수 있는 행운의 시간이라 생각하다.

 

경력과 경험의 10 년을 1년의 저술기간을 통해 녹여낸 이 책이 자바를 공부하는 이들에게 큰 힘이 될 것이라 생각한다. 나는 Cherry Picker 로 필요한 부분만 얌체같이 챙겨가지만, 책 한 권 값에 이 모든 내용을 온전히 다 가져갈 수 있다면 자바를 입문했거나 초급 개발자 분들에게는 아주 큰 목소리 볼드체로 강권하는 바이다.

 

10 년 전에 이 책을 만났더라면……

10  년 전에 이 책을 만났더라면 ……

구매링크

www.yes24.com/Product/Goods/90334366

 

코드를 통해 본 빵형의 실전 Java

『코드를 통해 본 빵형의 실전 Java』는 이해하기 힘든 이론보다 실제 실무와 실전 개발에서 사용하는 실습 코드로 결과를 얻어 가는 과정을 쉽게 이해할 수 있게 쓰려고 노력한 책이다. 특히, 알

www.yes24.com

aladin.kr/p/wNb13

 

코드를 통해 본 빵형의 실전 Java

실무 SI 프로젝트에서 많이 사용하고 있는 이클립스를 이용하여 스스로 환경을 설정하고 문법을 익히고 예제를 구현하기까지 혼자서 준비하여 코딩할 수 있게 진행하고 있다. 너무 이론에 치우�

www.aladin.co.kr