코틀린으로 리팩터링하기

덩컨 맥그레거, 냇 프라이스 지음

오현석 옮김

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

2023년 2월

2023 나는 리뷰어다 활동의 첫 번째 리뷰

 

새해 들어 첫 리뷰할 책은 "자바에서 코틀린으로" 이다.

주종목이 자바 스프링인 본인으로서는 미래를 대비해 꼭 필요한 책이라 할 수 있겠지.

그래서 리뷰를 신청하게 되었습니다?

 

2021년 2월에 처음으로 나는 리뷰어다 활동을 시작했는데, 벌써 햇수로 3년째이다.

과연 올해도 리뷰어가 될 수 있을까 싶었는데, 그래도 꾸준히 올린 덕분에 올해도 선정해 주신 것 같다.

(한빛미디어!! 항상 사랑합니다!!)

 

그렇다면 본인의 개발자 경력도 그렇다는 이야기인데... 과연 내가 3년 차 개발자인가 싶다.

 

아무튼. 리뷰를 시작해 보자.

 

"이 책은 코틀린을 써서 컴퓨터 프로그래밍을 짜는 방법을 가르쳐주지 않는다."

 

이 책을 공부하고자 하는 개발자님이시라면 책의 목적이 이렇다는 것을 알아야 한다.

 

이 책은 기존 자바 코드를 코틀린으로 변환하면서 코틀린 언어를 가르쳐주고, 기존 자바와 코딩 지식을 활용해 더 빠르게 코틀린을 채택하고 싶어 하는 자바팀을 위해 고안된 책이다.

 

동기가 충분하고 경험이 많은 자바 개발자는 대부분 코틀린 언어의 기능을 아주 빠르게 배울 수 있다고 저자는 생각하고 있다.

이 책은 코틀린의 장점을 살릴 수 있도록 사고방식과 설계방식을 조정하도록 돕고, 자바식 사고방식의 코드를 코틀린식 사고방식의 코드로 마이그레이션 하는 방법을 보여주는 책이다.

 

책이 어떻게 구성되어 있는지 보자.

전형적인 자바 프로젝트의 몇 가지 측면을 어떻게 개선할 수 있는지를 살펴보며,

'자바의 방식'에서 '코틀린의 방식'으로라는 패턴의 제목으로 정리한다.

 

코틀린을 사용하면 자바에서 사용하기 힘든 접근 방법을 쉽게 쓸 수 있게 하거나 자바에서는 흔히 사용되는 접근 방법을 사용하지 않게 권장함으로써, 여러분의 설계를 실수할 여지가 더 적고, 더 간결하며, 더 도구 사용에 유리한 방향으로 이끌어 준다.

 

결국엔 안전하면서도 두 언어가 섞인 코드 기반을 계속 유지해 나갈 방법을 사용해 점진적으로 자바를 코틀린으로 리팩터링 한다.

 

목차를 정리해 보자.

 

1 소개
2 자바 프로젝트에서 코틀린 프로젝트로
3 자바 클래스에서 코틀린 클래스로
4 옵셔널에서 널이 될 수 있는 타입으로
5 빈에서 값으로
6 자바에서 코틀린 컬렉션으로
7 동작에서 계산으로
8 정적 메서드에서 최상위 함수로
9 다중식 함수에서 단일식 함수로
10 함수에서 확장 함수로
11 메서드에서 프로퍼티로
12 함수에서 연산자로
13 스트림에서 이터러블이나 시퀀스로
14 누적시키는 객체에서 변환으로
15 캡슐화한 컬렉션에서 타입 별명으로
16 인터페이스에서 함수로
17 목에서 맵으로
18 열린 클래스에서 봉인된 클래스로
19 예외 던지기에서 값 반환으로
20 I/O 수행에서 데이터 전달로
21 예외에서 값으로
22 클래스에서 함수로
23 여행은 계속된다

 

자바의 방식에서 코틀린의 방식으로 라는 패턴의 제목으로 정리되어 있으며, 자바개발자라면 친숙한 용어들이 나열되어 있다.

 

자바에서 코틀린으로 넘어가는 개발자들은 코틀린을 대충 살펴보고는 쉬운 언어라고 생각하고, 코틀린 문법으로 작성한 자바 코드를 작성하기 쉽니다. 하지만 코틀린의 결에 맞게 코드를 작성하면 전통적인 자바 객체 지향 코드보다 더 안전하고, 유지 보수하기 쉽고, 더 간결하면서 보기 좋은 코드를 작성할 수 있다.

 

이 책을 통해, 자바식 사고방식과 다른 코틀린식 사고방식을 접하고 얻어갈 수 있다면 이 책을 읽는 개발자에게 큰 도움이 될 수 있는 책이다.

 

코틀린을 공부하고자 하는 자바 개발자분들이여. 이 책은 꼭 거쳐가도록 하자.

 

코틀린의 결을 얻어 갈 때까지.

 

Love Yourself.

+ Recent posts