본문 바로가기
리뷰/도서

자바 개발자를 위한 97가지 제안 - 제이펍

by Remover 2020. 12. 27.
반응형

책소개


《자바 개발자를 위한 97가지 제안》은 자바 개발 역량을 키우고 싶은 독자에게 자바 리더및 전문가의 알토란 같은 노하우를 제공한다. 책에서 소개하는 97가지의 제안은 문제를 새로운 시각에서 바라보고, 자신이 맡은 일에 더 넓은 책임을 가지며, 새로운 기술을 익힘으로써 스스로의 역량을 확대하여 개발 전반에 대한 능력을 끌어올려 줄 것이다. 

케블린 헤니와 트리샤 지가 함께 편집한 이 책은 자바 소프트웨어를 작성하고 소프트웨어 개발 프로세스와 함께 살아온 전문가 73인의 축적된 경험을 반영하고 있다. 훌륭한 개발자가 자신이 학습한 지혜를 공유함으로써 레거시 코드를 다루는 독자는 물론, Java 8 이후의 변경 사항을 적용하는 독자에게도 자바 개발에 대해 다시 한번 생각해 볼 기회를 마련해 줄 것이다.

이 책의 대상 독자
+ 자바 전문가들의 다양한 시각을 보고 싶은 자바 개발자
+ 한 단계 도약하고자 하는 일반 개발자
+ 자바를 좀 더 알고자 하는 코틀린 개발자

jpub.tistory.com/1118

 

자바 개발자를 위한 97가지 제안

더 나은 자바 개발자로 성장하기 위한 새로운 시각! 다른 언어 개발자가 보기에도 충분한 범용적인 프로그래밍 노하우! 도서구매 사이트(가나다순) [교보문고]  [도서11번가]  [반디

jpub.tistory.com

목차


더보기

PROPOSAL 11 아니, 내 머신에서는 잘 실행됐다니까! 24 
PROPOSAL 12 비대한 JAR은 이제 그만 27 
PROPOSAL 13 코드 복원전문가 29 
PROPOSAL 14 JVM의 동시성 31 
PROPOSAL 15 CountDownLatch, 친구인가 적인가? 34 
PROPOSAL 16 선언적 표현식은 병렬성으로 가는 지름길이다 37 
PROPOSAL 17 더 나은 소프트웨어를 더 빨리 전달하기 39 
PROPOSAL 18 지금 몇 시예요? 41 
PROPOSAL 19 기본 도구의 사용에 충실하자 44 
PROPOSAL 20 변수를 바꾸지 말자 46 
PROPOSAL 21 SQL식 사고 도입하기 50 
PROPOSAL 22 자바 컴포넌트 간의 이벤트 52 
PROPOSAL 23 피드백 루프 55 
PROPOSAL 24 불꽃 그래프를 이용한 성능 확인 57 
PROPOSAL 25 지루하더라도 표준을 따르자 59 
PROPOSAL 26 자주 릴리스하면 위험을 줄일 수 있다 61 
PROPOSAL 27 퍼즐에서 제품까지 63 
PROPOSAL 28 ‘풀스택 엔지니어’는 마음가짐이다 66 
PROPOSAL 29 가비지 컬렉션은 나의 친구 68 
PROPOSAL 30 이름 짓기를 잘 하자 70 
PROPOSAL 31 이봐 프레드, 해시맵 좀 전해 주겠는가? 72 
PROPOSAL 32 널을 피하는 방법 74 
PROPOSAL 33 JVM의 크래시를 유발하는 방법 77 
PROPOSAL 34 지속적 전달로 반복가능성과 감사가능성 향상하기 79 
PROPOSAL 35 자바는 자바만의 강점이 있다 81 
PROPOSAL 36 인라인식 사고 83 
PROPOSAL 37 코틀린과의 상호운용 85 
PROPOSAL 38 일은 끝났어요. 그런데... 87 
PROPOSAL 39 자바 자격증: 기술 업계의 터치스톤 89 
PROPOSAL 40 자바는 90년대생 91 
PROPOSAL 41 JVM 성능 관점에서의 자바 프로그래밍 93 
PROPOSAL 42 자바는 재미있어야 한다 95 
PROPOSAL 43 자바의 불분명한 타입들 98 
PROPOSAL 44 JVM은 멀티패러다임 플랫폼이다 101 
PROPOSAL 45 최신 동향을 파악하자 103 
PROPOSAL 46 주석의 종류 105 
PROPOSAL 47 은혜로운 flatMap 108 
PROPOSAL 48 컬렉션을 제대로 이해하자 111 
PROPOSAL 49 코틀린은 정말 물건이다 113 
PROPOSAL 50 관용적인 자바 코드를 학습하고 머릿속에 캐시하자 117 
PROPOSAL 51 카타를 하기 위해 학습하고 카타를 이용해 학습하자 120 
PROPOSAL 52 레거시 코드를 사랑하는 방법 123 
PROPOSAL 53 새로운 자바 기능을 학습하자 126 
PROPOSAL 54 IDE를 활용해 인지 부하를 줄이는 방법 129 
PROPOSAL 55 자바 API를 디자인하는 기술 131 
PROPOSAL 56 간결하고 가독성이 좋은 코드 133 
PROPOSAL 57 자바를 그루비스럽게 136 
PROPOSAL 58 생성자에서는 최소한의 작업만 140 
PROPOSAL 59 Date라는 이름은 조금 더 명확해야 했다 143 
PROPOSAL 60 업계의 발전에 기여하는 기술의 필요성 145 
PROPOSAL 61 바뀐 부분만 빌드하고 나머지는 재사용하기 147 
PROPOSAL 62 오픈소스 프로젝트는 마법이 아니다 149 
PROPOSAL 63 Optional은 규칙을 위반하는 모나드지만 좋은 타입이다 151 
PROPOSAL 64 기본 접근 한정자를 가진 기능 단위 패키지 154 
PROPOSAL 65 프로덕션 환경은 지구상에서 가장 행복한 곳이다 157 
PROPOSAL 66 좋은 단위 테스트에 기반한 프로그래밍 160 
PROPOSAL 67 OpenJDK 소스 코드를 매일 읽는 이유 163 
PROPOSAL 68 내부를 제대로 들여다보기 165 
PROPOSAL 69 자바의 재탄생 168 
PROPOSAL 70 클로저에 의한 JVM의 재발견 170 
PROPOSAL 71 불리언 값은 열거자로 리팩토링하자 173 
PROPOSAL 72 속독을 위한 리팩토링 176 
PROPOSAL 73 단순한 값 객체 179 
PROPOSAL 74 모듈 선언에 주의해야 하는 이유 182 
PROPOSAL 75 의존성을 잘 관리하자 185 
PROPOSAL 76 ‘관심사 분리’가 중요한 이유 187 
PROPOSAL 77 기술 면접은 학습할 가치가 있는 기술이다 190 
PROPOSAL 78 테스트 주도 개발 192 
PROPOSAL 79 bin 디렉터리에는 좋은 도구가 너무나 많다 195 
PROPOSAL 80 자바 샌드박스를 벗어나자 198 
PROPOSAL 81 코루틴에 대한 고찰 201 
PROPOSAL 82 스레드는 인프라스트럭처로 취급해야 한다 204 
PROPOSAL 83 정말 좋은 개발자의 세 가지 특징 206 
PROPOSAL 84 마이크로서비스 아키텍처의 트레이드오프 208 
PROPOSAL 85 예외를 확인하지 말자 210 
PROPOSAL 86 컨테이너로 통합 테스트의 숨겨진 가능성을 끌어내자 213 
PROPOSAL 87 퍼즈 테스트의 어마무시한 효과 215 
PROPOSAL 88 커버리지를 이용해 단위 테스트 개선하기 218 
PROPOSAL 89 사용자 정의 아이덴티티 애노테이션을 자유롭게 사용하자 220 
PROPOSAL 90 테스트를 이용해 더 나은 소프트웨어를 더 빨리 개발하자 223 
PROPOSAL 91 테스트 코드에 객체지향 원리 적용하기 225 
PROPOSAL 92 커뮤니티의 힘을 빌려 경력을 개발하자 228 
PROPOSAL 93 JCP 프로그램에 대한 이해와 참여 방법 230 
PROPOSAL 94 자격증에 가치를 두지 않는 이유 232 
PROPOSAL 95 주석은 한 문장으로 작성하라 234 
PROPOSAL 96 ‘읽기 좋은 코드’를 작성하자 237 
PROPOSAL 97 젊은 객체, 늙은 객체, 그리고 가비지 240 

리뷰


이번에 리뷰하게 된 책은 '자바 개발자를 위한 97가지 제안'입니다.

책을 제공해주신 Jpub 관계자 분께 감사를 드리며, 책을 펼쳤습니다.

 

이 책의 가장 큰 장점은 간단하게 읽을 수 있는 책이라는 겁니다.

자바에 대해서 간단하고 간략하게 서술하고 있는데요.

내용을 깊게 설명하는 것이 아니라 특정 주제에 대한 컬럼을 모아 책으로 만들어 놓은 느낌이었습니다.

 

목차에서 보이는 것과 같이 Proposal(제안) 1~97까지 존재합니다.

1개의 제안마다 2~3장의 내용을 담고 있어서 하루의 3개의 제안씩 읽으면 약 한달정도 내에 읽을 수 있습니다.

 

 

첫번째 제안, 자바만으로도 충분하다.

 

자바만으로 충분하다는 내용으로 책이 시작됩니다. 

다양한 언어들이 존재하는 만큼 다양한 개발자도 존재하고, 그 속에서 어떤 언어를 선택해야할지 고민에 놓여있는 개발자들도 많을 겁니다. 

자바만으로도 충분하다는 것은 자바 자체가 범용적으로 훌륭한 언어라는 내용을 담고 있었습니다.

 

Python, C, Java, Kotlin, Go 등 여러 언어가 있지만 본인에게 맞는, 업무에 맞는 언어를 잘 선택해서 사용하는 것이 가장 좋을 것 같습니다.

 

Proposal 32. 널을 피하는 방법

 

널 피하는 방법? 머리 속에 순간 비 - 태양을 피하는 법이 떠올랐네요.

NULL을 피하는 것은 프로그램 개발에 있어서 서비스 안정성을 높여줍니다.

프로그램이 동작하다가 NPE(NullPoint Exception)이 발생하는 순간 프로그램이 죽을 수도 있기 때문이죠.

다양한 제안들이 존재합니다.

간단하게 내용이 적혀 있지만, 중요한 내용들이 많이 들어있는 책이었습니다.

 

Proposal 49. 코틀린은 정말 물건이다

 

자바 제안에 갑자기 코틀린이 나온다고? 라는 생각을 했습니다.

코틀린은 자바와 개념도 비슷하기 때문에 제안에 들어가 있는게 아닐까 라는 생각을 했습니다.

모든 제안이 자바와 관련된 것은 아니라고 생각됩니다.

제안을 보면서 잘 맞는 제안을 찾으면 좋을 것 같습니다.

 

마지막 제안. 젊은 객체, 늙은 객체, 그리고 가비지

 

번역에 아쉬움이 조금 남습니다.

젊은 객체, 늙은 객체, 가비지...

 

Young, Old, And GC 영어 그대로 번역해서 사용했어도 좋지 않았을까 생각됩니다.

책 전체적으로 이 부분은 조금 아쉬운 부분이 있습니다.

IT 용어 자체를 써도 되는 부분에서 한글로 변경하여 표시한 부분은 조금 아쉬움을 남깁니다.

 

GC라는 중요한 내용으로 책을 마무리 하고 있습니다.

 

이 책은 너무 깊지도, 너무 얕지도 않은 97개의 제안을 하고 있습니다.

지하철에서, 카페에서 간단하게 읽을 수 있는 내용들이 많았습니다.

 

기회가 된다면 읽어보시는 것을 추천드립니다.

 

 

<이 책은 제이펍으로 부터 책을 지원받아 작성하였습니다.>

댓글