|
|||||
|
|||||
[대구동성로점] 서가 단면도
|
코틀린이 안드로이드 공식 언어가 되면서 관심이 커졌다. 이 책은 코틀린 언어를 개발한 젯브레인의 코틀린 컴파일러 개발자들이 직접 쓴 일종의 공식 서적이라 할 수 있다. 코틀린 언어의 가장 큰 특징이라면 실용성을 들 수 있을 것이다. 이 책에서도 실용성을 강조하는 입장에서 쓰였다.
코틀린 기초를 소개하고, 고차함수, 객체지향, 제네릭스 등의 내용을 설명한다. 그리고 코틀린이 자바 언어를 어떻게 개선했고 기존 자바 프로젝트에서 코틀린을 함께 사용할 때 어떤 부분을 조심해야 할지를 중심으로 코틀린 언어를 설명한다. 후반에는 애노테이션과 리플렉션, DSL에 대해 실제 라이브러리 예제를 다루면서 설계 기법과 구현기법을 자세히 설명한다. 특히 이 주제는 이 책의 백미로, 다른 코틀린 책이나 공식 문서에서는 찾아보기 힘들며 실전에서 크게 도움이 받을 수 있다. 한국어판 부록에서는 코틀린 버전 1.3.3까지의 변화를 정리한 내용과 코루틴, 코틀린/JS에 대한 간단한 소개를 덧붙였다 1장. 코틀린이란 무엇이며, 왜 필요한가? : 언어를 맨 밑바닥부터 설계하는 일은 그 자체로도 힘든 일이다. 하지만 새 언어가 기존의 다른 언어와 잘 어우러지도록 설계하는 일은 전혀 다르다. 기존 언어와 어우러지는 언어를 설계하는 과정에서 어두컴컴하고 스산한 괴물 소굴을 여럿 통과하면서 수없이 많은 힘센 괴물을 물리쳐야 한다. 자바 상호운용성은 코틀린의 가장 중요한 주춧돌이라 할 수 있으며, 이 책은 자바 코틀린 상호운용성에 신경을 많이 썼다. 이미 존재하는 자바 프로젝트에 코틀린을 점진적으로 도입할 때 자바 코틀린 상호운용성이 매우 중요하다. 심지어 새로운 프로젝트를 코틀린만으로 작성하더라도 자바로 쓰인 광범위한 라이브러리로 이뤄진 플랫폼이라는 더 큰 그림에 들어맞게 코틀린 언어를 구사해야 한다.
이 추천의 글을 쓰는 동안에도 두 가지 타겟 플랫폼을 더 개발 중이다. 이제 코틀린은 자바스크립트를 지원하기 때문에 풀 스택 웹 개발이 가능하다. 또한 빠른 시일 안에 필요에 따라 네이티브 코드로 코틀린을 컴파일해서 VM없이도 코틀린 프로그램을 실행할 수 있게 할 예정이다. 따라서 현재 이 책은 JVM에 주로 초점을 맞추지만 앞으로는 이 책에서 배운 내용을 여러 다른 실행 환경에 적용할 수 있을 것이다. 저자들은 초기부터 코틀린 팀의 일원이었기 때문에 코틀린 언어와 그 내부 구조에 대해 잘 알고 있다. 그들은 각종 컨퍼런스나 워크숍 발표, 코틀린 교육 과정 등을 통해 코틀린을 더 잘 설명할 수 있게 됐고, 사람들이 자주 하는 질문이나 흔히 저지르는 실수에 대해 더 많이 알게 됐다. 이 책은 코틀린 언어의 특성을 뒷받침하는 고수준 개념을 설명하면서도 독자들에게 필요한 만큼 각 특성의 세부 사항을 제시한다. 나는 독자 여러분이 이 책을 읽으면서 코틀린과 함께 즐거운 시간을 보내기 바란다. 내가 종종 코틀린 커뮤니티에 포스팅하면서 쓰는 인사말로 추천의 글을 마친다. 코틀린과 함께 좋은 시간 되세요!
|