10월 중순부터 읽기 시작한 이것이 자바다 교재를 드디어 완독했다.
자바의 신, 자바의 정석 등등 다른 교재도 고민을 했었지만 난 이것이 자바다를 선택했다.
아직까지 주기적으로 신간이 나오기도 하고, 다른 "이것이 시리즈"를 좋게 읽었기 때문에 선택한 것도 있다.
책의 표지는 이렇게 생겼다.
1000p 가까이 되는 매우 두꺼운 책이다. 너무 두껍다고 쫄지 말자. 안에 든 내용은 정말 알차고 버릴게 하나도 없다.
책이 너무 두꺼워 빨리 완독하고 싶은 마음에 상대적으로 덜 중요한 부분은 그냥 스킵하려고 했지만..
정말 버릴 부분이 하나도 없어서 그러지 못했다.
난 본래 정보보안 전공이고 모의해킹 분야로 진출하려고 했지만 지금은 백엔드 개발자를 지향하며, 이제 막 개발 공부를 시작한 상태이다.
처음부터 인터넷 강의로 스프링을 배워보려고 했지만, 자바 언어에 대한 부족한 이해 때문에 도저히 진도가 나가질 않고 모르는 것 투성이였다. 기존의 난 파이썬만 조금 다룰 줄 아는 상태였으니까.
그런데 당시엔 왜 이렇게 어렵고 진도가 안 나가는지 몰랐다. 자바에 대한 이해 부족 + 단순히 개발이 어려움이 합쳐져 그런 줄 알았는데, 이 책을 완독하고 나니 자바에 대한 이해 부족이 90% 이상이란 것을 깨달았다.
도저히 이해되지 않고 머리가 깨질 것 같던 스프링 강의가 이제는 귀에 쏙쏙 들어온다.
처음에 공부한 강의는 김영한님 스프링 입문 강의였다. "파이썬을 해 봤으니 자바도 따라하다 보면 자연스레 배우겠지." 라는 마인드로 시작했지만.. 정말 말도 안 되는 일이었다. 자바를 모르니 스프링이 눈에 들어올 리가 있나.
자바는, 내가 기존에 백준에서 문제 몇개 풀던 파이썬과 정말 달라도 너무 달랐다. 클래스, 필드, 메소드, 상속, 인터페이스 등등.. 백준 문제 풀 때는 그냥 main 메소드에 다 때려박고 해버리면 되지만, 개발에서의 자바는 너무나도 어려웠다.
이 클래스 저 클래스 만들고, 이 메소드 저 메소드 만들고, 얘는 이거 상속하고 저거 상속하고, 인터페이스 구현하고, public private static 등등 상황에 맞게 쓰고 어쩌구 어쩌구.. 다른 언어 해 봤다고 대충 감으로 될 난이도가 아니다 자바 자체가....ㅋㅋㅋㅋ.
그래도 일단 시작은 했으니 억지로 스프링 강의는 완독했었다. 그 직후 "이것이 자바다" 교재를 산 것이다.
하루 30p 씩 한달 조금 넘는 기간이면 완독하겠다 싶었고, 기간을 딱 맞추진 못했으나 얼추 맞춰서 완독했다.
나는 이 책을 공부하는 내내 조금씩 발전해 나가는 느낌이 들었다. 그동안 스프링 강의에서 이해가 안 되었던 것들, 뭔지 아예 모르는 것들이 이 책에 전부 담겨있었고 하나하나 읽고 코드를 쳐보며 이해해 나가는 과정이 재미마저 느껴질 정도였다.
몰라서 답답했던 것들을 알게 되니 마음이 뻥 뚫리는 기분.
책의 설명은 굉장히 상세하고 친절하다. 초심자가 읽어도 될 정도로 잘 설명 되어있으니 이해하기 어렵지 않을 것이다.
또한 개념 하나하나마다 예제 코드가 반드시 있다. 개념만으로 이해가 되지 않더라도, 그냥 코드를 따라서 한줄한줄 따라가 보면 어느새 이해가 되어있는 나를 볼 수 있다.
공부하다가 귀찮아서 글만 읽고 코드를 치지 않은 부분도 조금 있었는데, 그 파트는 확실히 이해가 더뎠고 파트 마지막 부분에 있는 연습문제를 풀 때도 굉장히 버벅거렸다. 이렇게 하면 안 공부한 것이나 마찬가지니, 하나하나 따라 입력해 보면서 확실히 이해하는 방식을 추천한다. 결과적으로 난 거의 모든 예제코드를 따라 입력하고 실행해 보았다.
한 줄로 설명하면, "그냥 따라만 가도 좋은 책" 이라고 하겠다.
내용이야 말할 것도 없고 설명도 친절하고, 연습문제와 예제코드도 충분하며, 프로그래밍을 처음 시작하는 사람이 읽어도 좋으며, 책의 뒷부분엔 숙련자에게도 도움이 될 만한 어려운 부분까지도 담겨 있다. 또한 구성도 좋다. 스프링 강의를 볼 때 몰랐던 부분이 전부 이 책에 있었고, 반대로 말하면 이 책에 있는 내용들은 개발 실무에서도 자주 쓰이는 내용인 듯 싶다.
또한 자바 17 최신버전까지 설명되어 있기에 최근에 추가된 기능까지도 잘 배워볼 수 있다.
독자를 위한 카페가 운영되고 있으며, 이곳에서 질문을 할 수 있다. "이것이 자바다 카페" 검색하면 나올 거다.
또한 유튜브 강의도 제공된다. 난 안 봤지만. 굳이 강의까지 안 봐도 설명이 워낙 잘 되어있어서 난 안 봤다.
책 뒤쪽에 네트워크, 데이터베이스 입출력 파트가 있다. 이쪽은 실무와도 직결된 부분인데( 채팅방 프로그램, 게시판 프로그램 등등 ) 자칫하면 초심자에게 벽이 될 수도 있는 부분이지만 책만 따라가도 습득할 수 있도록 쉽게 잘 쓰여져 있다.
한달이 넘는 시간동안 책을 열심히 정독한 후 게시판 프로그램을 처음 만들었을 때의 기분은 정말 짜릿했다. ( 그게 오늘이다 )
근데 게시판은 DB와 연동해서 구현하기 때문에 DB에 대한 기초적인 이해와 기본 쿼리정도는 알고 있어야 수월할 듯 싶다. 기초 쿼리정도만 알면 쉽게 따라갈 수 있다.
참고로 19장에선 채팅방 프로그램, 마지막 20장에선 게시판 프로그램을 구현한다.
이 책을 완독하는데 약 35일 정도 걸린 것 같다. 실제로 프로그램을 만들지 않고 이론만 정독하는 과정은 조금 재미없을 수 있다. 나도 그랬고.
하지만 꾹 참고 완독한 후 20장에서 자신의 게시판을 완성한 순간, 그동안 책으로 공부했던 내용들이 절대 헛되지 않았다는 걸 깨달을 것이다.
다른 자바 교재는 안 읽어봐서 모르겠다. 하지만 안 읽어봐도 "이것이 자바다"는 자신있게 추천할 수 있다. 꽤 괜찮은 책이다.
=====================================
본격적인 스프링 공부를 하기 전 자바를 공부한 건 매우 잘한 선택이었던 것 같다. 역시 뭐든간에 기초가 중요하다.
자바 기초를 잘 다져놓았으니, 이제 진짜 개발 공부를 시작하려 한다. 책도 이미 샀다.
누구한테 추천받은 건 아니고.. 그냥 혼자서 골라본 책이다. 360p 정도의 두께이고,
일단 이 책만 따라가면 최소한 웹사이트 하나는 만들 수 있게 구성되어 있다.
JPA, OAuth2, AWS, Git 등 실무에서 필요한 테스트, 배포, 버전관리 등을 다양하게 배울 수 있는 것 같다.
책의 차례를 보고 골랐는데 이거면 괜찮겠다 싶었고.. 아직 안 읽어봤는데 괜찮은 책이길 바란다.
괜찮은 책이라면 이 책도 완독 후 후기를 쓰도록 하겠다. 나도 후기 찾아봤는데 별로 없는 걸 보니 아직 그렇게 유명한 책은 아닌 것 같다.
게시판 프로그램 오늘 처음 만들어 봤더니 개발에 좀 자신감이 붙는것 같기도 하고, 감도 좀 잡히는 것 같다.
그러나 아직 준비할 게 너무 많다. 혼자서 프로젝트라도 하나 해서 포트폴리오도 만들어야 하고, 코딩테스트도 빡세게 준비해야 한다.
반대로 시간은 얼마 안 남았다. 내년 상반기 취직이 목표인데 4,5개월쯤 남았는데 해낼 수 있을지.. 하반기까진 가기 싫다 ㅜㅜ. 도대체 언제쯤 되어야 내 능력과 포부를 증명할 수 있을까.
욕심은 많고 시간은 없고 경쟁자는 많고.. 하루도 헛되이 버릴 수 없는 나날들이다.
'독서 > IT' 카테고리의 다른 글
[스프링 부트3 백엔드 개발자 되기] 후기, 스프링 부트 교재 (0) | 2024.01.15 |
---|