코틀린 완벽 가이드 리뷰

falconlee236

·

2022. 4. 9. 23:33

반응형

1. 이 책을 고른 이유


내가 아무리 머신러닝&딥러닝에 관심이 많다고 해서 웹&앱을 완전히 무시하고 IT업계에서 살아남기는 힘들다. 이 세상의 모든 정보는 인터넷으로 흘러들어 인터넷에서 빠져나간다고 해도 과언이 아니다. 머신러닝으로 얻은 결과를 공개해야 하는데, 논문으로 세상에 공개할 수도 있지만 인터넷으로 공개하는 것이 훨씬 더 많은 사람들에게 알릴 수 있지 않을까? 이런 이유 말고도 수많은 이유로 아무리 자신이 웹을 업으로 삼지 않는다고 해도 웹을 어느 정도는 알아야 한다고 생각한다.

웹&앱을 다루기 위해서는 수많은 내용을 공부해야 하는데, 나는 솔직히 웹과 앱을 나누는 기준은 그냥 다루는 프로그래밍 언어의 차이라고 생각한다. 언어만 다르고 두 분야의 본질은 결국 같다고 생각한다. 그 중에서 웹같은 경우는 지금 내가 공부를 진행중이기도 하고 엄청나게 많은 자료가 인터넷에 떠다니고 있다. 인터넷 페이지를 만드는 기술이 인터넷에 있는 것은 어찌보면 당연하다는 생각이 들 정도이다. 하지만 생각보다 훨씬 적은 정보만이 안드로이드 운영체제를 다루는 코틀린을 담는다. 안드로이드는 전세계 스마트폰 유저를 양분하는 거대한 두 진영인 삼성과 애플중에서 삼성이 사용하는 운영체제이다. 그렇기 때문에 수요층도 어마어마하며 개발층도 어마어마하다. 하지만 생각보다 안드로이드 개발에서 코틀린이 차지하는 입지는 좁다. 기본적으로 자바를 개선한 언어로 출발한 코틀린은 처음 개발할때는 매우 좋은 전망이 보였으나 아직 생태계가 생성되지 않은것인지, 안드로이드 개발자가 보수적인지는 잘 모르겠지만 그냥 자바로 개발하는 경우가 다반사였다.

그 반증이 안드로이드 관련 책 출판 현황이다. 시중에 출판되어 있는 안드로이드 책중에서 코틀린을 다룬 책은 거의 없고 자바를 사용하는 책이 대다수였다. 그런 책들 사이에서 코틀린으로 개발하고 싶은 사람들한테 이 책은 가뭄의 단비와 같은 존재이다.

왜 우리는 코틀린을 배워야 할까? 가장 큰 장점은 바로 안전하고 간결한 코드 일것이다. 코틀린은 자바와 완전한 상호호환적인 특징을 가지며, 코틀린으로 작성한 코드는 JVM에서 잘 돌아간다는 특징을 가지고 있다. 따라서 이미 JAVA로 구성한 생태계에 잘 녹아들 수 있다. 그리고 가장 중요한 특징은 바로 JAVA보다 깔끔하고 안전한 코드를 작성할 수 있다는 것이다. 간결한 코드는 생각보다 중요하다. 코드가 깔끔해야 디버깅 하기도 수월하며, 생산성에도 유리하다. 자바로 코딩을 하본 나로써 문자열 하나를 출력해도 필요한 수많은 코드때문에 자바에는 손이 잘 안갔는데, 이 책을 코틀린을 공부해보면서 자바보다 훨씬 간단하면서 자바의 큰 틀은 유지하려고 하는 개발자들의 모습을 잘 볼 수 있었다.

2. 주관적인 책 소개


이 책이 더욱더 신뢰가 가는 점은 코틀린을 만든 회사인 제트브레인즈의 개발자가 책을 저술했다는 것이다. 아무리 개발자가 글을 잘 못쓴다고 해도 자기가 만든 언어에 대한 서술은 잘 할것이라고 생각했고, 내 생각은 틀리지 않았다.

이 책은 다른 책과 달리 한 부분에 엄청나게 자세한 설명을 하지 않는다. 하지만 이 책의 가장 큰 장점은 폭넓은 부분을 다양하게 소개한다는 점이다. DFS가 아닌 BFS형식으로 코틀린을 소개한다. 내가 이 책을 읽고 가장 많이 배운 것은 코틀린이 가지고 있는 매우 다양한 기능이다. 모르는데 어떻게 아냐는 말 처럼 언어를 처음 배울때 모르면 알 수 없는 부분이 존재하는데, 이 책을 보면서 다양하고 폭넓은 코틀린 기능을 배울 수 있었다. 이렇게 되면 좋은 점은 내가 필요한 코틀린 기능이 있을 때 이 책에서 배운 내용을 바탕으로 더 자세히 구글에 검색을 할 수 있다는 것이다. 개발의 대부분은 구글링으로 이루어져 있다고 해도 과언이 아니기 때문에 해당 언어에 대한 다양한 기능을 알고 있는 것이 중요하다. 그리고 그 중요성을 채워주는 책이 바로 코를린 완벽 가이드이다.

 

반응형

3. 인상 깊은 부분


나는 이 책을 보면서 코틀린을 얼마나 폭넓게 설명하는지, 자바와의 차이점이 뭔지 설명을 해서 왜 코틀린을 사용해야하는지 독자에게 설명하는 점을 인상깊게 봤다.

  1. chap 2 - 변수
    이 부분에서는 코틀린과 자바의 차이점이 명확하게 나타난다. 변수 선언이 자바와는 다르게 매우 깔끔하다. 변수 선언부는 자바가 아니라 자바스크립트를 오마주했나 생각이 들정도로 자바스크립트와 매우 비슷하다는 느낌이 들었다.
  2. chap 3 - 함수
    코틀린이 자바와 차별되는 또 하나의 부분이 바로 함수의 선언과 함수의 종류라고 생각한다. 이 부분을 읽으면서 나오는 수많은 예약어들은 코틀린이 추구하는 코딩 철학을 잘 알 수 있었다.

4. 주관적인 평점


코틀린을 다루는 얼마 안되는 책이라는 점에서 별 4점을 줬지만 내용적인 부분이나 편집적인 부분에서 1점을 감점시켰다. 하지만 코틀린을 다루고 싶다면 이 책은 반드시 읽어봐야 한다고 생각한다.
⭐⭐⭐⭐ (4/5)

반응형