4차산업혁명의 일꾼/Java&Spring웹개발과 서버 컴퓨터

인텔리제이, 스프링부트, 그래들, 코틀린과 함께 코틀린의 역사 고찰

르무엘 2023. 3. 14. 23:51

코틀린은 젯브레인에서 2011년에 공개한 오픈 소스 프로그래밍언어다. 

1995년에 발표한 자바보다 16년 늦게 태어났다. 

그러나 코틀린은 내가 코딩을 시작한 해인.. 2017년에 구글이 안드로이드 공식 언어로 코틀린을 추천하였다고 하니 지금 모바일계는 코틀린이 점령하고 있다고 보인다. 

코틀린은 예외처리도 강제하지 않고, 널에 안전하고, 모든 함수가 return 값을 가지는 등 차이도 있지만.. 무엇보다 자바와 비교하면 문법이 간결하다.. 파이썬처럼 참 직관적이니 차세대 언어에 가까워 보인다.

 

아래글은 아직 코틀린이 좋긴 하나, 자바보다 인지도 면에서 밀리고 빌드속도가 또한 느리다.(자바의 컴파일러의 역사는 20년을 넘는다.)메타는 그래들을 사용하는 인텔리제이의 안드로이드 스튜디오 IDE... 대신 자체적인 Buck 빌드 시스템을 사용해서 완성시켰다고 하는데...메이븐과 그래들중에 그래들이 안드로이드 스튜디오에서 쓰이는 거라면...메이븐은 xml언어 기반이고 그래들은 스크립트 언어 기반인데..자바 17에서 이미 xml을 사양시키려하니확실히 그래들을 쓰고 싶다.

https://zdnet.co.kr/view/?no=20221103115509 

 

메타는 왜 안드로이드 앱을 코틀린으로 다시 짜나

메타는 페이스북, 인스타그램, 메신저, 포탈, 퀘스트VR 등의 안드로이드 앱의 코드를 자바에서 코틀린으로 전환하고 있다. 수천명 개발자를 투입해 진행하는 코틀린 전환 프로젝...

zdnet.co.kr

 

그리고 이전에 코틀린 잠깐 배우며 비교해봤지만..

구글이 안드로이드에서 코틀린을 밀고 있으면

모바일과의 호환성까지 생각할 때 그래들이 훨씬 나은 것 같다.

https://dev-imaec.tistory.com/36

 

[Kotlin] Kotlin vs. Java - 코틀린, 자바 차이점 비교

Kotlin vs. Java 비교하기 꽤 오래전부터 많은 회사들과 개발자들이 Android 개발에 있어서 Java 언어보다 kotlin 언어를 많이 사용하는 추세입니다. 물론 아직도 Java를 많이 사용하고 있지만 구글에서도

dev-imaec.tistory.com

 

그래들이 속도도 빠르고(최대 100배) 가독성도 좋다.

그리고 설정주입방식(configuration injection)으로 인해 공통모듈을 바로 상속해서 사용가능하다고 한다.

메이븐은 동적인 요소를 xml로 정의하는데 한계가 있다고 한다.

그래들은 Groovy문법을 사용하는데 JVM에서 사용되는 스크립트 언어로, 문법이 자바와 유사하다고 한다.

https://pearlluck.tistory.com/704

 

[Kotlin]🐘빌드도구(Build Tool), Gradle과 Maven 차이점

파이썬 개발만 해왔던 내가 코틀린으로 스프링부트 프로젝트를 공부하면서 '빌드도구'의 개념이 가장 낯설었다. 그래서 Gradle과 Maven과 같은 빌드도구를 알아보려고 한다. 빌드도구란? 빌드 자동

pearlluck.tistory.com

https://velog.io/@hanblueblue/%EA%B8%B0%EC%B4%88-%EC%A7%80%EC%8B%9D-%EB%8B%A4%EC%A7%80%EA%B8%B0-2.-Gradle

 

[번역] Gradle(1)

Gradle의 역사에 대해서 이해한다. > Gradle Document를 번역하고 요약한다. Gradle의 역사 > 사전지식 > 빌드와 컴파일 > 컴파일 : 컴파일러에 의해 소스코드가 바이너리 코드로 변환되는 과정 > 빌드 : 소

velog.io

그루비에서는 거의 모든 것이 객체이다

https://ko.wikipedia.org/wiki/%EC%95%84%ED%8C%8C%EC%B9%98_%EA%B7%B8%EB%A3%A8%EB%B9%84

 

아파치 그루비 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 그루비(Groovy)는 자바에 파이썬, 루비, 스몰토크 등의 특징을 더한 동적 객체 지향 프로그래밍 언어이다. 자바 가상 머신에서 작동하는 동적 타이핑 프로그래밍

ko.wikipedia.org

 

문득 자바(1990)와 코틀린(2011)로 21년차

메이븐은 (2002)... 그루비는 2002년도 같은 해인데 그래들은(2009) 로 7년차

스프링(2003).. 스프링부트(2014)로 11년

이클립스(2001)와 인텔리제이(2009)로 8년차

자바11에서 자바EE제거(2018)

 

코틀린(21)도 좋고, 그래들(7)도 좋고, 스프링부트(11)도, 인텔리제이(8)도 좋다.

레퍼런스는 저정도 만큼 뒤쳐진다고 하나..

코틀린은 자바 호환이고, 그래들도 JVM의 Groovy기반이고,

스프링부트는 설정편이성이고 인텔리제이는 코틀린개발사에서 개발한 툴이니

돌고 돌아 JVM위의 인텔리제이와 코틀린의 조합이 좋아 보인다.

 

2023년 기준으로 스프링부트(9년), 코틀린(12년), 그래들(14년), 인텔리제이(14년) 되었다.

그렇다면 인텔리제이에서 그래들을 쓰면서 스프링부트를 배우고 나서.. 코틀린을 배우면 

웹/앱 백앤드 개발자가 가능하다. 

 

코틀린은 IOS개발까지 가능하다고 하니까...

https://blackmanta.tistory.com/25

 

Kotlin으로 IOS 개발을 할 수 있을까?

결론부터 말하자면 가능하다. 코틀린이 JVM 위에서만 돌아간다고 알고있는 분들도 있지만, JVM은 코틀린의 타겟중 하나일 뿐이다. 코틀린은 AOS(Kotlin JVM), IOS에서도(Kotlin Native), 웹브라우저에서도(K

blackmanta.tistory.com

 

 

멀티플랫폼 모바일을 코틀린과 함께..  

https://kotlinlang.org/docs/multiplatform-mobile-getting-started.html

 

Get started with Kotlin Multiplatform Mobile | Kotlin

 

kotlinlang.org

 

생각해보니까 코틀린으로 안드로이드랑 IOS에서 다 된다면 

그게 효율적이니까 메타에서 대량으로 자바를 코틀린으로 바꿨다는 판단이 이해가 된다.

 

LIST