세계적으로 가장 널리 사용되는 프로그래밍 언어 중 하나인 자바는 2020년 올해 25주년을 맞이했습니다. 오랜 역사를 가진 언어인 만큼 부침도 있었습니다. 썬마이크로시스템이 오라클에 합병되면서 꽤 오랜 기간 자바의 신규 버전 발표가 지연되었고, “자바는 이제 죽었다”는 말까지 나왔습니다. 하지만 자바 6에서 7로 넘어가는 5년의 공백을 제외하고 자바는 늘 꾸준히 업그레이드가 이루어지고 있고 그 영향력도 여전합니다.

| 자바의 세계적인 위치는 여전히 공고하다 (2020년 9월 TIOBE 순위: https://www.tiobe.com/tiobe-index/)

자바는 버전 8에 이르러 엄청난 변화를 수용합니다. 무엇보다 객체 지향 언어임을 강조해온 자바에 함수형 프로그래밍을 도입했습니다. 이는 자바가 고양이 눈처럼 변하는 개발 환경의 변화에 발맞추기 위해 계속 노력하고 있음을 잘 보여줍니다. 그래서 이전 자바와 완전히 다르다는 뜻으로 자바 8 이후의 자바를 ‘모던 자바’라고 칭합니다.

자바 8 이후의 혁신적 변화로 자바 개발자들은 엄청난 학습 부담이 생겼습니다. 예전의 자바에 익숙한 개발자는 이해하기 힘든 개념과 문법, API 등이 대거 추가되었기 때문입니다. 게다가 자바의 뛰어난 하위 호환성 덕분에 기존 방식으로 코딩해도 잘 동작하니 굳이 새로운 기술을 익히려 하지 않는 경우도 많습니다.

이러한 이유에서인지 많은 개발자들의 지식, 관련된 도서나 컬럼, 예제 코드 등이 자바 6이 기준인 경우가 많습니다. 10년 전의 자바 코드와 현재의 자바 코드가 크게 달라지지 않고 유지되고 있는 것이죠. 그 결과 사용하는 개발 환경과 운영 환경의 버전은 꾸준히 업그레이드가 이루어지고, 현재 가장 보수적인 금융 기업들도 자바 8 기반으로 빠르게 변경하고 있지만, 여전히 개발하는 코딩 표준과 API는 자바 6을 벗어나지 못하고 있는 것이 현실입니다.

《Practical 모던 자바》는 이전과 달라진 자바의 새로운 기능을 쉽게 풀어 설명합니다. 각 버전별로 추가된 기능을 정리하고 각 기능의 도입 배경과 개념, 활용법, 기능 간의 관계 등을 자세히 다룹니다. 특히 변화가 가장 큰 자바 8 버전을 중점적으로 다룹니다.

항상 최신 버전을 사용해서 개발을 진행하는 것도 아니고, 버전을 선택할 수 없는 경우도 허다합니다. 이런 상황에서 각 버전별 기능을 알아두는 것은 필수적입니다. 또 실무에서 경험할 수 있는 다양한 상황을 예로 들어 자바의 새로운 기능이 어떤 편리함을 제공할 수 있는지 보여줍니다. 예제는 최신 LTS 버전인 JDK 11을 기준으로 하고 있어 바로 적용하기에 무리가 없습니다.

《Practical 모던 자바》는 설명이 친절하면서 깊이 있고, 따라 하기 쉬운 간결한 예제들로 구성되어 있어 모던 자바의 장점과 효용성을 쉽게 이해할 수 있다. 현재 자바 8 이상 환경에서 개발하고 있지만 이전 버전의 코딩 방식에서 크게 벗어나지 못해 람다, 함수형 프로그래밍, 스트림이 낯설게 느껴지는 사람이나 업그레이드를 고민하고 있는 개발자들에게 도움이 될 것이다.

– 김효진(메리츠화재해상보험 IT팀)

저자인 장윤기님은 기존 자바 개발자들이 모던 자바의 새로운 기술을 경험해보고 매력과 편리함을 직접 느껴보고, 실무에 활용하기를 바라는 마음으로 이 책을 집필하셨습니다. ‘모던 자바는 어렵다’는 선입견을 버리고 《Practical 모던 자바》로 자바의 편리한 기능들을 경험해보세요!

이 책에서 다루는 내용

▶ 자바 버전별 변경 사항

▶ 함수형 프로그래밍

▶ 람다 표현식

▶ 스트림 API

▶ 병렬 프로그래밍

▶ 자바 모듈화

▶ 날짜와 시간 API

▶ NIO 2.0

《Practical 모던 자바》는 다음 서점에서 구입하실 수 있습니다.

Yes24 | 교보문고 | 알라딘 | 인터파크

[소스코드 다운로드]

[정오표]