21-11-24
안녕하세요 JetBrains 총판 단군소프트입니다. 이 글에서는 앞으로의 Kotlin에 대해 가장 많은 투표를 받은 10가지 질문에 대해 답변합니다. 여러분도 댓글이나 Reddit(아래 링크)에서 대화에 참여할 수 있습니다. 얼마 전, 1.5.0 릴리즈 이벤트의 일환으로 Reddit에서 Kotlin 팀 AMA(Ask Me Anything, 무엇이든 물어보세요)을 진행했습니다. 저희는 수백 개의 질문을 받았으며, 여기에 대한 답을 하고 대화에 참여하며 매우 즐거웠습니다. Reddit에서 받은 질문을 통해, 우리는 이 대화를 더 널리 공유하는게 중요하다고 느꼈습니다. 답변은 Kotlin 커뮤니티의 모두에게 훌륭한 지식의 원천입니다. 질문을 해 주신 모든 분과 세심하게 그 질문에 대해 모두 답을 해 준 팀에게 감사를 전합니다. 우리는 최근 릴리즈에 관한 질문 뿐 아니라 몇 가지 기술적인 질문을 받았습니다. 그러나 추천을 많이 받고 사실 우리 관심을 가장 끌었던 것은 Kotlin의 미래에 대한 질문이었습니다. 질문 질문 #1 몇 년 전, 가장 원하는 기능에 투표하는 개발자 설문이 있었습니다. 앞으로 비슷한 것이 있을까요?
질문 #2
질문 #3
질문 #4
대신 코어에서 Kotlin/Native로 Kotlin을(LLVM의 도움을 받아) 직접 네이티브 코드로 컴파일합니다. 또한 Objective-C 및 Swift에서 컴파일된 Kotlin 코드에 액세스할 수 있도록 브리지를 생성합니다. Kotlin 클래스 Kotlin/Native 컴파일러가 Kotlin API에 대한 Objective-C 표현을 추가하는 것과 비슷합니다. 문제는 사실, Kotlin에 Swift 표현을 추가할 방법이 있냐는 거겠죠? 우리는 정답을 계속 살펴보고 있습니다. 질문 #5
우리는 이 두가지 문제를 해결해 Qodana에 검사를 추가하길 희망합니다.” 질문 #6
JVM/IR 백엔드는 Kotlin 1.5에서 출시되었습니다. JVM 팀은 이제 앞으로 성능에 중심을 둘 것입니다. 한편, 새 프론트엔드는 활발히 개발중이며 올해 가을에 초기 버전을 출시하려고 합니다. 새 컴파일러 프론트엔드는 주요 성능 향상을 제공할 것입니다. 지금 현재 프론트엔드보다 4배 빠르며, 전체 컴파일 파이프라인 (프론트엔드+백엔드)의 속도보다는 효과적으로 두배정도 빠릅니다. 그리고 Kotlin IDE 플러그인이 분석을 위해 컴파일러 플러그인을 사용하기 때문에 FIR에 기반한 새 플러그인이 IDE 환경에서도 성능을 향상시킬 것 입니다. 질문 #7
질문 #8
그래서, 우리는 지금 분리된 다단계 상호운용성에 집중하고 있습니다. TypeScript 선언을 Kotlin 선언으로 변환하여 소비하고 (d.ts) Kotlin으로부터 TypeScript 선언을 생성합니다. (d.ts) 누가 알겠어요? 언젠가 매끄럽게 될 수도 있을겁니다. 질문 #9
다음 단계는 https://github.com/spring-projects-experimental/spring-native/을 통해 훌륭한 Kotlin/JVM/Native(Kotlin/JVM을 GraalVM 네이티브 이미지를 이용해 네이티브로 사용) 지원을 제공하고, (예를 들어 Kotlin/JS 프론트엔드를 이용하여) 멀티플랫폼 개발을 강화하고, Spring Boot 문서를 Kotlin으로 번역하고(Kotlin 팀의 기여를 통해), 재귀적인 제네릭 타입(WebTestClient 처럼)의 일부 타입 추론의 버그 때문에 Kotlin에서 현재 손상된 API를 사용가능하게 하는 것입니다. 장기적으로 제가 좋아하는 주제는 Kotlin 리플렉션을 AOT(Ahead of time)로 적용해 Spring 프레임 워크에서 실시간 kotlin-reflect를 제거하는 것과, https://github.com/spring-projects-experimental/spring-fu를 성숙시켜 더 DSL스럽게 Spring Boot를 구성하는 것입니다. 비록 Spring 기반의 구현은 아니지만 RSocket 프로토콜(GRPC의 많은 용례에 대해 https://rsocket.io/는 대안이 될 수 있습니다)의 Kotlin 멀티플랫폼 구현인 https://github.com/rsocket/rsocket-kotlin을 도우려고 합니다. 질문 #10 메타 프로그래밍 기능을 제공할 계획이 있다고 알고 있는데, 이 주제에 대한 새로운 소식이 있나요?
Kotlin과 미래에 관한 유용한 추가 리소스
향후에도 알림을 받고 싶으시다면, Twitter, 블로그 업데이트, YouTube 채널을 구독해 주세요. Kotlin의 새로운 기능을 위한 투표를 시작할 예정입니다. 향후에 저희가 어떤 기능에 우선 순위를 두어야할지 여러 분의 의견을 들려주세요. 출처:Answering the Top 10 Questions About Kotlin’s Future | The Kotlin Blog (jetbrains.com) |