본문 바로가기
IT 기술 트렌드

Top 10 Books of All-Time for Java Programmers

by kellis 2020. 8. 4.

※ 해당 글은 DZone의 Top 10 Books of All-Time for Java Programmers 포스트를 차용하여 편집한 글입니다. 

 

 

프로그래머로서 Java에 대한 지식을 향상하기 위해, 더 나은 Java 개발자가되기 위해 책이나 레퍼런스를 찾아본다면 올바른 방향으로 가고 있는 것입니다. 이를 돕기 위해서 가장 훌륭한 Java 도서라고 생각되는 책 10권을 소개해 드리겠습니다. 이 책들은 시간이 지나면서 많은 이들의 테스트를 거쳐, 해가 가며 갈수록 관련성이 더 높아졌습니다. 2018년에 책을 읽었던, 2019년에 책을 읽으려 하던, 이 책들은 항상 배울 것이 많을 것입니다.

 

(1) Effective Java

이 책은 이미 너무나도 유명하지만, 저자인 Joshua Bloch가 java.lang 및 Java Collection 프레임 워크와 같은 몇 가지 주요 Java 클래스 및 API의 작성자라는 사실만으로도 이 책을 읽을 만한 충분한 이유가 됩니다. 더군다나 Java 7, 8 및 9를 다루는 새로운 버전의 Effective Java 가 출간되었기 때문에 이전에 읽은 적이 있는 분이더라도 다시 읽어볼 만한 가치가 있다고 생각합니다.  

 

(2) Clean Code

누구나 한 번쯤 들어봤을 법한 고전입니다. 자바를 배우기는 쉽지만 강력한 OOP 원칙을 사용하는 더 나은 Java 코드를 작성하기 어렵기 때문에 이 책이 도움을 줄 것입니다. 

 

(3) Java Concurrency in Practice

멀티 스레딩과 동시성은 Java의 필수 요소입니다. 그러나 까다롭고 어렵기 때문에 이 주제를 배우고 습득하는 데에는 이보다 더 좋은 책이 없습니다. 여전히 Java 5에 대해서만 다루고 있지만 그럼에도 여전히 가장 추천되는 책입니다. 

이 책의 일부 섹션(특히 3.5.1~ 3.5.6 섹션)은 이해하기 어려울 수 있는데 Extreme Java - Concurrency Performance가 도움을 줄 수 있습니다. 

 

(4) Head First Design Patterns

OOP와 디자인 패턴에 대한 지식을 얻기 좋은 책입니다. 몇 년 전에 Java SE 8에 대한 업데이트가 출시되었기 때문에 여전히 디자인 패턴에 대해 공부하기 좋은 책입니다. 

 

(5) Spring in Action

이 책은 Spring 서적 이상입니다. 이 책은 자바에 대해 많은 것을 깨닫게 해 주며, 더 나은 코드를 작성할 수 있도록 도와줍니다. 

JDBC와 같은 주제를 다루고, JDK가 어디에서 잘못되었는지, 그리고 Spring이 그 실수를 어떻게 정정하는지를 설명합니다. (예: SQLException, 등)

 

(6) Test Driven

테스트 자동화는 중요한 기술입니다. 개발자들은 모두 단위 테스트부터 시작하여 테스트를 작성합니다. 단순히 라이브러리를 아는 것을 넘어 코드 품질과 작성 단위, 통합 및 테스트 자동화에 대해 진지하게 공부하고 싶다면 이 책은 꼭 읽어야 할 도서입니다. 

 

(7) The Definitive Guide to Java Performance

더 나은 Java 개발자가 되기 위한 또 다른 측면은, JVM, Garbage collection 및 성능 튜닝에 대해 아는 것입니다. 이 책은 JDK 7까지만 다루지만, 일반적으로 성능 튜닝과 JVM에 대한 많은 것을 배우기 도와줍니다. 

 

(8) Head First Java

많은 사람들이 이 책으로 Java를 시작할 만큼 입문서로 유명한 도서입니다. 출간된 지 오래되어 시대에 뒤떨어진 것 아니냐고 생각할 수도 있지만, 독특한 스타일과 내용으로 여전히 Java 입문자들에게는 훌륭한 책입니다. 

 

(9) Head First Object-Oriented Analysis and Design

열 개 중 세 개나 Head First의 도서가 올랐습니다. 이 책은 위에서 언급한 Head First Java, Head First Design Pattern과 함께 Head First OOAD로 삼부작을 구성합니다. 실제 OOP와 Desingn Pattern 기술을 설명함으로써 Head First Design Pattern 책을 보완합니다. 이 책에서 가장 중요하다고 생각되는 부분은 인터페이스를 코딩하고 변경 사항을 캡슐화하는 방법이었습니다. 이 책은 단순하게 자바 코드를 작성하는 방법을 바꿨습니다.

 

(10 Java: A Beginner's Guide

Java의 포괄적인 내용을 다루는 책입니다. Java를 배우기에 가장 완벽한 책 중 하나입니다. 이 책은 현재 7th Edition으로 Java 9을 다루고 있을 만큼 최신 상태로 유지해오고 있습니다. 

댓글