News

앞으로의 Exposed 전개 방향

Read this post in other languages:

Exposed는 몇 년 전 Kotlin으로 작성된 가벼운 ORM/DAO로 시작되었습니다. 이후 JetBrains의 여러 핵심 제품에 내부적으로 사용되었으며 GitHub에서 Team(팀) 프로젝트로 분류되었음에도 불구하고 많은 외부 사용자를 확보했습니다.

프로젝트 담당자가 지원을 제공하며 개선을 이루기 위해 최선을 다하고 있지만 JetBrains는 더 많은 리소스를 투입해야 할 시기가 되었다는 판단을 내렸습니다. 이에 따라 정규직 개발자들과 기술 책임자 1명을 고용하여 Exposed를 최고의 제품으로 만들기 위해 작업을 진행하고 있습니다.

여기서는 향후 계획을 알려 드리겠습니다.

제품

1.0을 위한 균일한 API

Exposed의 장점 중 하나는 SQL과 유사하게 정적으로 타입이 지정된 언어를 제공하여 코드에서 SQL 문자열을 사용하는 단점 없이 데이터베이스를 쉽게 쿼리할 수 있다는 것입니다. 여기서 유사하다는 말의 의미를 잘 새겨야 합니다. SQL과 상당한 편차가 생기는 경우가 있습니다.

이에 구문을 최대한 SQL에 가깝게 만들고 Exposed의 DAO 및 DSL 접근 방식 간에 일부 불일치를 없애려고 노력하고 있습니다.

이 과정에서 적지 않은 변경 사항이 도입되겠지만 Exposed의 발전을 위한 견고한 기반을 마련하기 위해 꼭 필요하다고 생각합니다.

상용구 작성량 축소

Kotlin과 마찬가지로 Exposed로 작업할 때 작성해야 하는 상용구 코드의 양을 줄이는 것이 목표입니다. 아쉽게도 현재는 그렇지 못합니다. 반복적 코드를 작성해야 하는 부담을 줄일 수 있는 여지가 분명히 있습니다.

물론 Ktor와 마찬가지로 어노테이션을 도입할 수도 있겠지만 마법처럼 해결되는 결과는 피하고 싶습니다. 개발자가 정확히 무슨 일이 어떻게 일어나고 있는지 알아야 하기 때문입니다. 이러한 기준을 충족하기 위한 접근 방식을 찾고 있습니다.

장기 미해결 문제

굵직한 변경 사항 외에 해결해야 할 해묵은 문제도 많이 있습니다. 앞으로 몇 달 동안 최대한 많이 해결하는 것이 목표입니다. 주요 변경이 필요한 부분은 1.0 이후로 연기될 것입니다.

릴리스 과정

Ktor에서 그랬던 것처럼 Exposed를 Semantic Versioning으로 이동할 예정입니다. API에 대한 몇 가지 우려 사항을 해결하는 대로 1.0을 릴리스하려고 합니다. 현재 예상하는 시점은 2024년 1분기입니다. 하지만 이와 별도로, 문제가 해결되는 즉시 사용해 볼 수 있도록 월별 릴리스를 내놓을 예정입니다.

문서 및 샘플

Exposed의 주요 문제점 중 하나는 문서가 포괄적이지 못하다는 것입니다. 이를 위해 기존 문서를 검토하고 재구성하고 개선하는 과정에 있으며, 새로운 Exposed 웹사이트(마찬가지로 작업 중)에 게시할 예정입니다. 또한 쉽게 따라하고 배울 수 있는 보다 완전한 구성의 샘플을 제공하고자 합니다.

YouTrack으로 이동

진행하고 있는 작업의 일환으로 이슈 보고를 YouTrack으로 옮기고 있습니다. 이를 통해 이슈를 보다 원활하게 추적, 분류 및 처리할 수 있게 될 것입니다. GitHub의 기존 이슈는 이동하지 않을 예정입니다. 이전에 Ktor에서 이를 시도하는 과정에서 코멘트 작성자를 소실한 적이 있기 때문입니다. 또한 GitHub에는 검토하고 제거해야 할 오래된 미해결 이슈들이 많이 있습니다. 하지만 새 이슈는 YouTrack에 기록해야 합니다.

Exposed가 개발자에게 많은 가능성을 제시할 수 있을 것이라고 기대하며, 이 라이브러리를 계속 구축하여 사용자 여러분에게 최고의 경험을 제공하고 싶습니다. Kotlin Slack의 Exposed 채널에서 저희 팀원에게 연락하고 지원을 받을 수 있다는 사실을 잊지 마세요. 아직 ID가 없다면 이 양식을 사용하여 가입할 수 있습니다.

감사합니다.

Exposed 팀

게시물 원문 작성자

Jessie Cho

Hadi Hariri

image description

Discover more