오늘은 자바 웹 프로그래머 초보를 탈출하기 위해 아주 좋은 책 한 권을 소개해 드리려고 합니다. 자바 웹이니까 백엔드겠죠? https://slipp.net/ 의 자바지기 박재성님이 쓰신 자바 웹 프로그래밍 Next Step이라는 책입니다.
자바는 C 언어와 더불어 2대 비인기(?) 언어이지만 체감상 우리나라에서 가장 많이 사용하고 있는 언어 중 하나입니다. 주요 원인은 아무래도 스프링 프레임워크와 안드로이드 때문이겠네요.
그 중에서도 스프링으로 대표되는 자바 백엔드 분야는 관공서, SI 등에서 널리 사용되기도 하고, 네이버를 비롯한 대다수의 국내 서비스 기업의 백엔드 를 지탱하는 기술이기도 합니다. 그래서 많은 수의 시니어(라고 읽고 아저씨라고 읽는) 개발자가 있지만 여전히 더 많은 수의 개발자가 필요한 자리기도 하구요.
물론 php, 파이썬 + 장고, 루비 + 레일즈 등을 사용하는 기업도 꽤 많지만, 일단 취업에 가장 유리한 언어는 자바라는 게 개인적인 소견. 그러고 보니 코딩 인터뷰 완전 분석이라는 책에서도 자바나 C++ 중 한 언어를 추천합니다. 자바랑 C++ 중에 하나 고르라면? 이건 아마 거의 이견 없이 자바겠죠.
그런 의미에서 오늘 소개하는 이 책은 자바 초보를 벗어난 개발자 분들에게 날개를 달아줄 수 있는 책입니다.
이 책을 쓰신 자바지기 박재성님은 네이버, XL 게임즈, NHN NEXT 등의 굵직한 이력을 가지고 있는 숙련된 자바 개발자인데 후배들이 조금 더 쉽게 학습을 했으면 하는 마음에서 쓰신 책이라고 합니다. 이 책은 읽는 책이 아닙니다. 대부분 실습 위주로 구성되어 있고, 내용이 어렵다기보다 실습의 양이 방대해서 많은 시간이 걸립니다. 그렇지만 책의 내용대로 따라가면서 혹은 필요한 챕터를 골라서 학습하다 보면 실력이 증가하는 (혹은 증가하는 듯한?) 경험을 하실 수 있는 좋은 책입니다.
개인적으로 저도 아저씨 개발자이다 보니 C언어와 자바가 익숙한 시스템 프로그래머인데 이 책을 보고 따라하면 금방 웹 백엔드 개발자가 될 수 있을 것만 같은 기분이 듭니다.
이 책의 굵직한 내용 중 제 맘에 드는 것들을 소개하면 다음과 같습니다.
웹 서버 배포 실습
HTTP 웹 서버 구현을 통해 HTTP 이해하기
서블릿/JSP를 활용해 동적인 웹 애플리케이션 개발하기
DB를 활용해 데이터를 영구적으로 저장하기
AJAX를 활용해 새로고침 없이 데이터 갱신하기
새로운 MVC 프레임워크 구현을 통한 점진적 개선
의존관계 주입(이하 DI)을 통한 테스트하기 쉬운 코드 만들기
스프링과 ORM 프레임워크
마지막으로 언제나 강조하는 내용이지만 코딩은 책을 읽거나 짧은 예제 프로그램을 짜는 것으로는 충분하지 않습니다. 직접 사용할 수 있는 어플리케이션을 만들어 보는 경험이 여러분을 더 좋은 개발자로 만들어 줄 수 있습니다.
(여기부터는 광고) 그리고 혼자서 어렵다면 코드스쿼드와 함께 해 보는 건 어떨까요? 2017년 하반기에는 자바 백엔드 과정이 열릴 예정이랍니다.