기술지원 문의는 로그인 후에 가능합니다.

확인

Tech Blog

단군소프트에서 제공하는 소프트웨어 활용에 도움을 줄 수 있는 정보와 소프트웨어 새소식, 교육/세미나 정보를 제공해드립니다.

태그 모음

소프트웨어 소식

Kotlin 1.4 Release

20-09-02

안녕하세요 JetBrains 한국 총판 단군소프트입니다.
​지난 몇 년간 JetBrains 팀은 Kotlin을 재미있고 즐겁고 생산적인 프로그래밍 언어로 만들기 위해 열심히 노력해온 결과 드디어 오랫동안 기다리던 Kotlin 1.4가 출시되었습니다!


Kotlin 1.4는 Kotlin 인터페이스용 SAM 변환을 포함하여 몇 가지 새로운 언어 기능을 지원합니다.
그 밖의 자세한 설명은 아래에서 확인해 주세요!


커뮤니티 및 에코시스템

지난 12개월 동안 580만 명 이상의 사용자가 Kotlin 코드를 편집했으며 그 수는 계속 증가하고 있습니다.
그리고 특히 활성화된 사용자 수는 전년도보다 1.5배 증가했습니다.



Kotlin은 전문 개발자에게 가장 인기 있는 프로그래밍 언어 중 13위로 올랐으며, 가장 사랑받는 상위 5개 언어 중 하나입니다.


수많은 회사가 Kotlin을 주요 언어로 선택했으며, 모든 플랫폼에서 성공적으로 사용하고 있고, Kotlin 커뮤니티도 빠르게 성장하고 있습니다.

현재 30,000여 명의 Kotlin 개발자가 Slack 및 Reddit에서 지식을 교환하고 서로 지원하고,
90,000여 명의 사용자가 JetBrains의 공식 Twitter 계정을 팔로우하여 팁과 정보, 공지사항을 확인하고 있습니다.

그리고 Kotlin 커뮤니티는 전 세계 200개가 넘는 사용자 그룹을 보유하며 나날이 번창하고 있습니다.
커뮤니티의 이러한 발전은 모두 여러분들의 덕분입니다.


품질 중심의 개선

Kotlin 1.4의 주요 초점은 IDE 성능 및 안정성 향상을 포함하여 Kotlin의 전반적인 개발 환경을 개선하는 데 맞춰졌습니다.

IDE 멈춤 현상 또는 메모리 누수를 유발하는 수많은 이슈를 포함하여 60여 개의 성능 이슈를 검토하고 수정했습니다.
그 결과 Kotlin 1.4.0의 EAP 단계에서 전반적 환경이 사용하기에 훨씬 더 편해졌습니다.

또한 프로젝트 작업 시 큰 Kotlin 파일을 처음 열면 이전보다 훨씬 더 빨리 강조 표시된 내용을 볼 수 있고 강조 표시 기능은 대부분의 사례에서 ​1.5~4배 빨라졌습니다.



그리고 자동 완성 제안이 표시되는 데 걸리는 시간도 크게 개선하였습니다.
아래의 그래프에서 나타나듯이 Kotlin 완성 기능의 응답시간이 500ms가 넘는 경우가 거의 절반으로 줄었습니다.


코드 완성 속도 개선을 포함한 최신 변경 사항은 IntelliJ IDEA 2020.1 이상 및 Android Studio 4.1 이상 버전을 필요로 합니다.


새로운 IDE 기능

JetBrains는 전문 소프트웨어 개발을 더 생산적이고 즐거운 경험으로 만들자는 사명대로 Kotlin 관련 도구를 우수한 상태로 유지하고 Kotlin을 최대한 편하게 코딩할 수 있도록 만들고자 노력하고 있습니다.


[새로 도입된 IDE 기능]

1. Coroutine Debugger(코루틴 디버거)를 도입했습니다. 코루틴 디버거는 코루틴 작업을 수월하게 수행할 수 있도록 돕고 특히 동시 애플리케이션의 버그를 잡아냅니다. 이 디버거의 조기 기능 모음은 확장해 커뮤니티에 가장 필요한 기능을 제공할 예정입니다.

2. 새롭고 유연한 Kotlin Project Wizard(Kotlin 프로젝트 마법사)도 도입했습니다. 이 새로운 마법사 도구는 다양한 유형의 Kotlin 프로젝트를 생성하고 구성할 수 있는 단일 장소를 제공해 멀티플랫폼 프로젝트와 같은 더 복잡한 구조의 프로젝트도 쉽게 시작할 수 있습니다.

3. Kotlin 1.4.0에는 40여 개의 새로운 빠른 수정, 인텐션 및 검사가 추가되었으며, 코드를 수정할 때 Alt+Enter를 누르면 특정 컨텍스트에서 사용할 수 있는 항목을 확인할 수 있으므로 정확히 필요한 순간에 해당 항목을 이용할 수 있습니다.


새로운 컴파일러

JetBrains는 지금까지 오랫동안 Kotlin을 성능 및 확장성 측면에서 더욱 발전시킬 새로운 Kotlin 컴파일러를 개발해 왔습니다.

새로운 컴파일러의 주요 목표는 속도를 대폭 개선하고, Kotlin이 지원하는 모든 플랫폼을 통합하며, 컴파일러 확장 기능의 API를 제공하는 것입니다.

[Kotlin 1.4.0 출시 사항]

강력해진 새로운 유형 추론 알고리즘이 기본적으로 활성화됩니다.
: 이 알고리즘은 더 많은 사용 사례에서 유형을 자동으로 추론하고, 복잡한 시나리오에서도 스마트한 형 변환을 지원하고, 위임된 프로퍼티에 대한 추론을 개선하는 등 다양한 기능을 수행합니다.

새로운 JVM 및 JS 백엔드를 Alpha(알파) 모드에서 사용할 수 있습니다.
: 이 기능은 안정화가 완료되면 새로운 디폴트 값이 될 예정입니다.


이 프런트엔드는 코드를 분석하고, 이름을 파악하고, 유형 검사를 수행하는 등의 기능을 수행하는 컴파일러의 일부로, 이는 IDE 성능에도 영향을 미칩니다. 이 도구의 테스트 버전은 향후 릴리스에서 제공될 예정이므로 계속 소식을 확인해 주세요!


언어 기능


이미지를 누르시면 자세한 설명을 보실 수 있습니다.

라이브러리 개선 사항

이 릴리스의 Kotlin 표준 라이브러리에는 새로운 컬렉션 연산자, 위임된 프로퍼티 개선 사항, 이중 대기열 구현 ArrayDeque 및 기타 다양한 기능을 제공합니다.

그리고 Android 및 iOS 또는 JVM 및 JS 등 다양한 플랫폼에서 공유되는 ‘공통’ 코드로 된 표준 라이브러리를 사용할 수 있습니다.
공통 라이브러리는 점차 확대하여 누락된 기능을 추가하고 이동할 예정입니다.

또한 단일 플랫폼을 대상으로 하든, 멀티플랫폼 프로젝트에서 작업하든, Gradle Kotlin 프로젝트의 stdlib에서 종속 요소를 더 이상 선언할 필요가 없습니다. 이 종속 요소는 Kotlin 1.4.0부터 기본적으로 추가되어 있습니다.


Kotlin 에코시스템의 다른 부분에서는 다음과 같이 작업 중입니다.

① 사용자의 의견을 기반으로 kotlinx.coroutines를 점진적으로 발전시키고 있습니다.
② 직렬화 라이브러리가 점차 더 성숙해지고 있습니다. 그리고 오늘 kotlinx.serialization 1.0.0-RC 버전을 출시합니다.
③ 이미 실험 상태에 있는 kotlinx-datetime 라이브러리, DateTime API의 테스트 버전이 출시되었습니다.


Kotlin/JVM

새로운 Alpha Kotlin/JVM backend를 사용해보고 의견을 공유해 주세요!
여러분들의 의견이 컴파일러 확장 기능을 Kotlin 커뮤니티에 더 빨리 제공하는 데 큰 도움이 됩니다.



Kotlin/JS

Kotlin 1.4.0에는 다른 기능 중에서도 특히 새로운 Gradle DSL 및 새로운 Kotlin/JS 컴파일러 백엔드의 Alpha 버전이 함께 제공됩니다.

Kotlin/Native


[Kotlin/Native의 새로운 기능과 개선 사항]

- Kotlin/Native 컴파일 및 실행의 전반적인 성능 향상
- Kotlin/Native와 Swift/Obj-C 간의 상호운용성 개선
- 간소화된 CocoaPods 종속 요소 관리

현재 Kotlin/Native의 자동 메모리 관리 구현에는 동시성에 대한 제한이 있으므로 이에 대한 대체물을 만들기 위해 작업 중입니다.

주요 초점은 Kotlin/Native가 Kotlin Multiplatform Mobile에서 원활하게 작동하도록 만드는 것이고,
그 외에도 다양한 개선 사항을 준비하고 있습니다.


Kotlin 멀티플랫폼

Kotlin을 훌륭한 멀티플랫폼 솔루션으로 만드는 것은 최우선 과제 중 하나입니다.
JetBrains는 KotlinConf에서 몇 가지 중요한 개선 사항을 약속했으며 다음의 항목을 제공하게 되었음을 알려드립니다.


자세히 보기


iOS 기기 및 시뮬레이터에서 Kotlin 코드를 실행, 테스트, 디버그하기 위한 Android Studio 플러그인을 개발 중입니다.
첫 번째 공개 테스트 버전이 곧 출시될 예정이니 계속 지켜봐 주시기 바랍니다.

Android와 iOS 간에 코드가 공유되는 모바일 사용 사례를 구체적으로 타겟팅하기 위해 Kotlin Multiplatform Mobile(KMM) 기술을 사용하는 방법을 설명하는 자료를 Kotlin 커뮤니티 회원들의 도움을 받아 대량으로 곧 출시할 계획입니다.

현재는 모바일 대상에 초점을 두고 있지만 Kotlin Multiplatform 용 Web 대상의 경우 이미 JetBrains Space를 빌드하고 출시하는 데 적극적으로 사용하고 있습니다.


Kotlin 1.4 온라인 행사

Kotlin 1.4에 도입된 변경 내용 및 개선 사항을 활용하는 데 도움이 될 Kotlin 1.4 온라인 행사에 여러분을 초대합니다!

- 일시: ​2020년 10월 12일(월)~10월 15일(목)

- 행사 내용: Kotlin에 관한 지식과 이 언어와 에코시스템의 미래에 관한 정보로 가득한 4일로 구성되었으며,Kotlin 1.4의 새로운 변경 내용과 개선 사항에 대해 논의하고 이 언어에 대한 향후 계획을 공유할 예정입니다.

- 사전 질문 방법: Kotlin 팀원이 매일 Q&A 세션에서 여러분의 질문에 답변할 예정입니다.#kotlin14ask 해시태그로 트윗 하거나 양식을 사용하여 미리 질문을 해 주세요.[양식 바로가기]



Kotlin 1.4 온라인 행사는 10월 12일~15일에 스트리밍 되며 무료로 등록할 수 있습니다.


새로운 기능에 관한 자세한 설명은 Kotlin 1.4의 새로운 기능 페이지 및 문서에서 확인할 수 있으며,
Kotlin 1.4로의 마이그레이션 방법도 자세히 알아볼 수 있습니다.

Kotlin EAP 및 실험적 기능을 사용해보고 피드백을 주신 모든 분들께 진심으로 감사드립니다.
앞으로 더욱 발전해갈 Kotlin을 기대해 주시길 바랍니다.

더 궁금하신 점이 있으시면 단군소프트(JetBrains@tangunsoft.com)로 연락해 주세요.
감사합니다.

​ ​ ​ ​ ​ ​

태그