개발자

자바 9의 현재 상태

Paul Krill  | InfoWorld 2017.06.02
앞으로 출시될 자바 9 스탠다드 에디션(Java 9 Standard Edition)은 개발자에게 많은 이점을 제공한다.

엔터프라이즈 언어이자 플랫폼으로 널리 사용되는 자바의 새로 업데이트되는 버전에는 새로운 기능이 풍부하다. 예를 들어 모듈성, 사전(ahead-of-time) 컴파일 실험 버전, REPL(Read-Eval-Print-Loop) 등이 있다. 다만 모듈화에 필요한 대대적인 개편 작업으로 인해 공식 출시는 계속 지연되는 중이다.

여러 번 지연된 이 업그레이드는 원래 정해진 출시일은 2016년 9월이었는데, 현재 예정대로라면 2017년 9월에 나올 자바 개발자 키트 9에서 적용된다. 그동안 진행이 지지부진했던 것은 자바의 관리 주체인 오라클과 레드 햇, IBM 등 주요 자바 진영 업체들이 모듈화의 방향성을 두고 이견을 보인 탓이다.

모듈성을 향한 험난한 길
프로젝트 직소(Jigsaw)를 통해 추진되는 모듈성(modularity)의 원래 취지는 자바의 확장성과 보안을 강화한다는 것이다. 그러나 자바 9의 모듈성 계획은 그동안 모듈성을 위한 영역과 모듈성이 없는 영역을 구축해야 할 필요성을 두고 불협화음을 냈다.

모듈성을 구현하기 위해 필요한 개조 작업이 워낙 복잡해서 원래는 2014년 3월에 출시된 자바 8에 적용될 예정이었다가 제외된 후 자바 9로 연기됐다.

모듈성이 구현되면 JDK의 일부를 여러 가지 방법으로 런타임에 컴파일할 수 있다. 그러나 모듈성은 실제 코딩 측면에서는 큰 의미가 없을 수도 있다. 자바 소프트웨어 개발업체 아줄 시스템즈(Azul Systems) CTO 질 틴은 "모듈화가 코딩하는 방법이나 생산성에 큰 변화를 일으키지는 않을 것"이라고 말했다. 그러나 오라클의 자바 플랫폼 그룹 최고 설계자인 마크 라인홀드는 오랜 세월 동안 모듈성을 강력히 지지해왔으며 2년 전 직소를 두고 "심대한 변화"라고 평가했다.

개발자에게 궁극적으로 유용한지 여부와는 무관하게 모듈성은 자바 9에 추가될 것이 거의 확실하다. 최근 오라클은 모듈성 계획에 관해 자바 커뮤니티와 틀어진 관계를 개선하고, 오랜 기다림 끝에 마침내 자바 릴리스 9에 모듈성을 적용할 수 있을 것으로 낙관하는 중이다.

자바 9의 새로운 기능
자바 9에는 모듈성 외에도 새로운 기능이 많다. 사전 컴파일(Ahead-of-time compilation, AOTC)은 현재 실험적 구현 상태이긴 하지만 애플리케이션 시작 시간을 줄이는 데 도움이 될 것이다. jShell을 통한 REPL은 선언을 평가할 수 있는 명령 줄 도구, 그리고 다른 애플리케이션에서 이 기능을 사용하기 위한 API를 제공한다.

자바 9용 HTTP/2 클라이언트 API는 HTTP와 웹소켓 업그레이드를 구현하는 데 유용하며 HttpURLConnection API를 대체할 수 있다. 기존 API는 사용과 유지가 어려운 점 등 문제가 많다.

통합 JVM 로깅(Unified JVM logging)은 JVM 구성 요소를 위한 공통된 로깅 시스템을 도입해서 로깅을 위한 명령줄 옵션을 제공하고 충돌이나 성능 저하의 근본적 원인을 찾는 데 도움을 준다. 또한 자바 9에는 새로운 버전 문자열 체계도 도입되어 메이저 릴리스와 마이너 릴리스, 보안 업데이트 릴리스를 쉽게 구분할 수 있게 된다.

빨라진 자바 업그레이드 속도
오라클이 자바 9를 예정된 날짜에 출시한다면 자바 8과 자바 9의 간격은 3년 반이 된다. 앞으로 오라클은 자바 사용자들이 새로운 기능을 너무 오래 기다릴 필요가 없도록 릴리스 주기를 더 빠르게 해서 매년 또는 그보다 더 자주 새로운 버전을 내놓을 예정이다.

사용자들은 이런 빠른 업데이트 주기의 필요성에 대해 의문을 가질 수 있지만 어쨌든 앞으로는 핵심적인 새로운 기능을 이용하기 위해 오래 기다리지 않아도 된다. editor@itworld.co.kr  

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.