본문 바로가기

REVIEW/BOOK

[혼공자바] 당신이 자바를 이 책으로 공부해야 하는 이유

혼공자, 인사드립니다

1. 자바(Java), 혼공 시리즈와 만나다

저는 그동안 Java에 대해 그 어느 것도 아는 게 없었습니다. 제 위로 형이 있고, 제 여동생이 있는데 가끔 이들이 회사 취직할 때에 Java를 다룰 줄 알면 정말 좋다더라!라는 이야기를 들은 적은 있습니다. 그러나 딱 그 정도일 뿐, 제가 공부하는 C++과 Python 하기도 충분하다고 생각해서 프로그래밍 언어는 따로 배울 엄두를 못 내고 있었습니다. 제대로 프로그래밍 언어를 배우는 데에는 최소 한 학기는 투자해야 실무에서 쓸 수 있을 것이란 생각이 들었기 때문입니다. 그래서 별다른 목표가 없는 이상(회사 취직 염두하지 않는 저로선) 굳이 배울 필요도, 배울 시도조차 못하고 있던 것이죠.
하지만 책 리스트에서 이 책을 보았을 때, 저는 이상한 고양감에 휩싸였습니다. "혼공 시리즈가 Java도 다뤄준단 말이야?!" 하고 말이죠. 아시는 분은 아시겠지만, 혼공 시리즈 책은 혼공 학습단 커리큘럼을 따라가면 어떤 책이든 6주면 끝낼 수 있습니다. 한 달 반 정도, 대략 40일 정도 되겠네요. 40일이면 어느 언어든, 그 분야의 윤곽을 잡아내어 간단한 프로젝트 정도는 할 수 있게 해 줍니다. Java도 혼공 시리즈를 만나면 당연히 40일이면 충분히 독파할 수 있겠죠. 새로 접하는 언어 무엇이든 쉽고 재밌게, 그리고 빠르게 배울 수 있게 해주는 책은 단연 혼공 시리즈라고 생각합니다.
그래서 곧 개강도 하고, 시간도 없어질 제가 이 책을 선정한 것은 우연이 아닙니다. 제겐 낯선 언어지만, 그 언어도 충분히 혼자서 학습할 수 있게 도와줄 것이라는 혼공 시리즈에 대한 믿음을 갖고 있었고, 약간의 도전정신이 발휘된 덕분입니다. 그리고 혼공학습단과 한빛미디어 홈페이지, 강의 영상 같은 인프라도 잘 구축되어 있습니다.  아마 이 책을 접할 예비 독자님들도 이 책의 첫 장을 넘기면 제 말이 어떤 의미였는지 알 수 있을 겁니다. 이 시리즈는 새로운 마음을 갖고 도전하려는 초보 프로그래머들에게 가장 완벽한 시리즈입니다.

저자와의 인터뷰. 보면 알겠지만 이 책에 대한 애정이 엄청나다.

2. 자바(Java), 개정되어 새로워지다

혼공 시리즈 책을 사용할 때 아쉬웠던 점이 없던 것은 아닙니다. 책마다 쓰인 시점이 천차만별입니다. 혼공학습단도 벌써 11기가 마무리되었죠. 여름 겨울 한 기수씩 진행된 걸 생각하면 시리즈 책들도 길면 출판된 지 5년은 족히 되었겠네요. 책이 출판될 시점의 프로그랭 언어와 스튜디오의 버전은 예비 독자들의 시점의 것과 다른 가능성이 매우 높습니다. 처음 언어와 스튜디오 다운도 책에서 알려주는 그대로 따라 하는 게 좋은데, 첫 단추부터 틀려먹으면 쌩초보 프로그래머들이 매우 혼란스러울 겁니다.
그런 상황을 너무나 잘 아는 듯, 이 혼공자바 책은 올해 2월에 다시 쓰인 '개정판'입니다. 제가 첫 챕터 설명을 읽어가면서 다운로드를 하여봤는데, 정말 사진이랑 똑같이 흘러가더군요. 심지어 언어 버전조차 완전히 똑같았습니다. 책이라는 것 자체가 전산망으로 매일 최신의 정보를 제공할 수 있는 것은 아닙니다만, 이런 요소는 분명 초심자분들에게는 두 팔 벌려 환영받을만합니다. 개정된 만큼, 자바를 배우는 독자들이 어떤 것을 배우는 것이 좋은가도 고려를 많이 한 듯싶습니다. 뒤에서도 설명하겠지만 챕터가 무려 14강입니다. 가장 최신의 정보로, 가장 필수적인 정보만 여과해 담아 새로워진 혼공 Java를 만끽하세요.

버전이 2023-12로 정말 최신 그자체..
첫 자바 프로그래밍 현장..

3. 자바(Java), 본질에 닿다

이 책은 정말 놀라운 range를 보여주고 있습니다. 분명 초심자들을 위해 쓰였지만, 초심자들뿐만 아니라 Java에 대해 조금은 더 깊이 배우고 싶은 이들에게도 강력 추천해 줄 만한 책입니다. 그 이유는 3가지로 압축할 수 있을 것 같습니다. 첫째 25년 경력의 IT 전문 교육자이자 전임교수로 활동하시고 계신 신용권 교수님께서 쓰셨습니다. 가방끈도 기시고 설명력도 월등하신, 이 분야의 최고 전문가이시죠. 그러다 보니 이 책은 원론적인 이야기도 자주 나옵니다. 왜 이런 문장을 구사해야 오류가 없는지, 깔끔한 구동이 가능한지에 대해 해박한 컴퓨터 지식을 들어 풀어 설명해 주시지요.
그래서 둘째, 이 책은 정말 자세합니다. 대략 700페이지라는, 전공서 한 권과 비슷한 두께를 갖고 있어요. 이 두께가 처음 보면 질겁할 수도 있습니다. 제가 그랬거든요 ㅎㅎ 일반적인 혼공 시리즈 책 보다 1.5~2배 분량은 됩니다. 그렇지만 지레 겁먹을 필요는 없더라고요. 교수님께서 학생들이 조금이라도 이해하기 쉬우라고, 질문을 절대 하지 않게끔 애초부터 책이 정말 친절하게 풀어써져 있습니다. 그 말씀들을 한 문장 한 문장 따라가다 보면, 금세 한 챕터가 끝나 있는 진풍경을 보게 됩니다.
마지막으로 넘치는 자료들이 즐비하고 있습니다. 책을 쓱 넘기다 보면, 무수한 소스코드들이 펼쳐지면서 많은 페이지를 할애하고 있습니다. 이건 제가 학부 때 C++을 배우던 원서와 비슷한 양식입니다. 어떤 프로그래밍 언어든 텍스트로만 읽으면 제대로 배운 게 아니죠. 그래서 소스코드들을 보며 직접 손으로 코딩해 보라는 것이죠. 저 역시도 비슷한 입장입니다. 결국엔 실무에 활용하기 위해선 스스로 소스코드를 돌려보고 읽을 줄 알아야 한다고 생각해요. 그러기에 충분한 소스코드들이 있습니다. 게다가 제대로 배웠는지 한번 더 물어봅니다. 확인문제 파트에서 다양한 문제들과 소스코드들을 던져줍니다. 제가 풀어보니까 한 번쯤 생각해 보게 만들고, 의미 있는 문제들로 구성했더라고요. 문제수도 정말 많아서 감탄했었습니다. 이 정도의 책을 공부해야 '진짜' 배웠다고 할 수 있지 않을까, 아직 끝까지 보진 못했지만 혼공 시리즈 중에서 가장 독보적인 특징이지 않을까 싶습니다.

매 챕터안에 많은 예제와 연습문제들이 있다


***

그렇지만,

읽으면서 이 책을 추천드리지 않는 두 부류가 맴돌더라고요. 첫째는 다른 언어도 배우지 않은 진짜 생초보 분들입니다. 자바 자체가 우리나라에선 깊이감 있게 다뤄지는 언어입니다. 진짜 쉬운 언어로 꼽히는 Python이나 Javascript와는 조금 결이 달라요. 그러다 보니, 언어 자체에 익숙하지 않은 분들이 이걸로 프로그래밍 세계에 입문하는 것은 조금은 '사고'라고 생각합니다. 그렇다고 못 배울 정도는 아닙니다. 자신이 꽤 괜찮은 집중력과 이해력을 갖고 있다면 격파하고도 남을 책이긴 합니다. 하지만 대다수는  그렇지 않을 것이겠지요. 조금만 들춰보고 말 두꺼운 책으로 남을 바에는, 더 쉽고 간단한 언어 책으로 시작해 보시길 추천해 드리겠습니다.
그리고 실리보다 재미를 추구하는 분들께도 추천드리고 싶진 않습니다. 책 자체가 두껍고 긴 여정이 될 수 있습니다. 그 여정 끝에 실제적으로 업무에 활용하는 활용법보다는 자바를 이해하고 다룰 수 있는 '지식'들을 배운다고 보시는 게 맞습니다. 제가 혼공 시리즈를 꽤 많이 접해봤다고 했었죠? 일부 도서들은 책 중간부, 혹은 책 말미에 아예 실무 활용 챕터로 두어 프로젝트를 따라 구현하고 구동하는 것을 요구하기도 합니다. 이런 경우가 좀 더 드라마틱하고 더 흥미로울 수 있습니다. 그런 재미적인 요소들을 기대하고 오신 분들께는 실망스러우실 수 있습니다.

그렇지만!

학습의 재미를 충분하게 느끼실 줄 아시는 분들께는 배움의 연속인 이 책이 즐거우실 겁니다.
다른 프로그래밍 언어도 다룰 줄 아신다면, 그 경험을 끌어와 더 연결되고 깊이 있는 학습이 가능하실 겁니다. (개인적으론 C++과 유사한 점이 많은 언어라 생각했습니다)
그리고 프로그래밍 계에 제대로 발을 담가 취업까지 생각하신다면, 이 책은 어쩌면 필수적인 책일 겁니다.


☆ 이 포스팅은 한빛미디어 <나는 리뷰어다> 활동을 위해 책을 제공받아 제작된 서평입니다 ☆

저는 21학번으로 인공지능공학과 다니다, 현재는 메디컬 관련 학과 전공하고 있는 대학생입니다. 21년도 당시엔 C++라는 낯선 프로그래밍 언어를 접하고 애먹었던 기억이 있죠. 그 와중에 같이 입시 공부도 병행했던 지라 아무래도 학과 공부량은 조금 부족했던 것이 사실입니다. 그렇지만 인공지능 프로그래밍이 언젠가는 꼭 필요하게 쓰일 것이라 믿음이 있었기에, 꿋꿋이 공부해 나갈 수 있었습니다.
그리하여 22년도 중고 신입생이 되어 1학년을 보낸 겨울방학, 이따금씩 작년에 프로그래밍하던 기억이 떠오르더군요. 그 기억을 살려 다시 컴퓨터 공부를 하면 좋겠다는 생각이 들었습니다. 그렇지만 학과 공부처럼 각 잡고 하고 싶진 않아서 고민하던 중에, '혼공학습단'을 알게 되었습니다. 딱 6주 동안 혼공책을 가지고서, 정해진 분량을 갖고 숙제를 해나가면 되는 활동이었습니다. 혼공책 자체도 혼자 공부하기 정말 좋은 책입니다만 학습단 활동까지 하니, 공부한 내용을 학습단의 다른 분들과 공유하기도 좋고, 스스로도 공부한 내용을 정리할 수 있는 시간을 가질 수 있었습니다. 정말 좋은 시간이었죠. 동기부여도 되고, 좋은 정보도 많이 알아가면서 근 1년의 방학을 그렇게 보내왔습니다.

이번 <나는 리뷰어다> 활동은 '혼자 공부하는' 시리즈를 출판한 한빛미디어에서 주관하고 있는 활동입니다. 한빛미디어는 주로 프로그래머들을 위한 책들을 출판하고 있는데, 요즘은 디자인이나 스타트업 등 다방면으로 좋은 책들을 내고 있는 듯하더군요. 게다가 책을 읽고 리뷰하길 좋아하는 사람들을 대상으로 한 달의 한번 책을 지원받고 서평 쓰는 활동을 지원해 준다 하니, 저는 너무 감사했죠. 한빛미디어에서 내는 책들은 주로 혼공시리즈만 접했는데, 다른 책들
도 읽을 수 있다고 하니까 말이죠. 그리고 책 자체도 힙하기 때문에 예비독자분들께 포인트들을 뽑아내기 참 괜찮습니다. 앞으로는 틈틈이 읽고 싶었던 책들 지원받으면서 매달 한편씩 서평을 쓰고자 합니다.