[도서리뷰] 자바8 인 액션

한빛리더스10기에서 세번째로 리뷰하게 된 책은 한빛미디어의 '자바8 인 액션'입니다.

자바가 벌써 8버전까지 나왔습니다. 병렬처리 및 빅데이타 환경에서의 데이타처리등에 대응하기 위해 기존 객체지향프로그래밍외에 함수형 프로그래밍에 관련된 내용이 도입되었습니다. 람다표현식, 메서드 레퍼런스, 스트림, 디폴트 메서드, 비동기 프로그래밍과 새로운 날짜시간API에 대해 개념설명부터 어떻게 써야하고, 기존 코드를 어떻게 새로운 API를 이용한 코드로 리팩토링하는지를 알려줍니다.


책의 구성은 마치 교과서를 보는 듯한 구성으로 되어있습니다.
챕터별로
시작부분은 챕터의 내용을 3~4항목 정도로 무엇에 대해 얘기하는지 알려주고
코드와 그림이 곁들여진 설명이 나온 후 새로운 개념이나 문법들이 나왔을때 중간중간 퀴즈를 통해 다시한번 생각해보게 하고
챕터 끝부분에선 중요한 점들을 요약 정리해주면서 많이 신경을 썼다는게 느껴집니다.

그리고 여러 상점에서 가격정보를 가져와서 할인율 적용하고 머지하는 과정의 로직을 기존 API에서 병렬형 분산처리API로 바꾸는 예제에선 무조건 바꾸는게 아니라 단계별로 바꾸고 실행시간을 측정하고 바꾸고 측정하면서 확인을 눈으로 확인할 수 있도록 한게 좋았던거 같습니다.


- 코드를 어떻게 하면 더 가독성이 좋게 바꾸고(람다식, 메서드 레퍼런스)
- 기존 API(인터페이스) 에 새로운 기능들이 많이 추가되었지만 기존 구현모듈들이 그 영향(새로운 API의 구현) 없이 동작할 수 있게 하는지(디폴트 메서드)
- 컬렉션에서 데이타들을 원하는 형태로 연속적으로 변형시키며 원하는 결과를 만들어낼지 (스트림처리)
- 복잡한 스레드에 대한 고민없이 비동기적인작업을 어떻게 수행할지
등등에 대해 단단한 기초를 다지게 해줄 거 같습니다.

ps)
java8 개발하기위한 환경구축방법이 들어있었으면 좋았을거 같습니다.(이클립스에 java8컴파일을 할 수 있도록 하기위해 선 별도의 JDT추가설치작업이 필요하다 같은)