본문 바로가기
프로그래밍 놀이터/Kotlin, Coroutine

[Effective Kotlin] Item 25 : Reuse between different platforms by extracting common modules

by 돼지왕 왕돼지 2022. 4. 27.
반응형

이 글은 Effective Java 를 완독하고, Kotlin 을 상용으로 사용하는 개발자 입장에서
Effective Kotlin 글 중 새로운 내용, remind 할 필요 있는 부분, 핵심 내용 등만 추려 정리한 내용입니다.

 

Full-stack development

#
Front-end 는 JS 가 지배적이었고, Back-end 는 Java 가 인기가 좋았다.
그러나 Kotlin 의 등장으로 많은 것이 바뀌었다.
Java 는 Kotlin 과 함께 적용 가능하므로, Java 에서 Kotlin 으로 많이 넘어갔고, Ktor 같은 backend framework 도 있다.
Kotlin/JS lib 을 통해 Kotlin 이 JS 로 compile 도 가능해졌다. 그래서 React framework 와 Kotlin/JS 를 통해 web frontend 를 만들 수 있다.

 

 

Mobile development

#
모바일에서는 보통 Android/iOS 라는 2가지 플랫폼을 지원하며, 이 두가지는 약간의 차이는 있지만 대부분 공통된 특징을 가진다.
그래서 Kotlin multiplatform 기능(Kotlin/Native) 을 를 통해 공용 로직을 만들고 두 platform 에서 이를 share 할 수 있다.
보통 비지니스 로직을 공용으로 사용한다.

 

 

Libraries

#
platform 에 dependency 가 적은 로직의 경우 common module 로 이동하여 share 될 수 있다.

 

 

All together

#
Backend in Kotlin/JVM. Spring or Ktor
Website in Kotlin/JS. React
Android in Kotlin/JVM.
iOS Kotlin/Native.
Desktop app in Kotlin/JVM. TornadoFX
Rasberry Pi in Kotlin/Native.

 

 

 

반응형

댓글