오라클은 자바18을 출시한다고 29일 밝혔다.
자바 18은 프로그래밍 언어이자 개발 플랫폼인 자바의 최신 버전이다. 안전성과 보안성을 더욱 높인 수 천 가지 기능과, 개발자의 생산성을 더욱 향상시키는 9가지 플랫폼 업데이트 사항을 포함한다.
업데이트된 9개의 JDK 개선 제안(JEP) 중 JEP 413은 자바 API 설명서에 코드 스니펫(Code Snippets)을 추가하는 기능이다. API 설명서에 샘플 소스코드를 추가하거나, 프로토타입 생성 또는 테스트용 간이 웹 서버(JEP 408)를 추가하는 작업이 대폭 간소화됐다. 개발자들은 벡터 API(JEP 417)와 외부 함수 및 API(JEP 419) 등 두 가지 인큐베이팅 모듈과 스위치 문 패턴 매칭(JEP 420) 등 미리보기 기능도 활용할 수 있다.
오라클은 최근 온프레미스 환경 또는 모든 클라우드 환경에서의 자바 런타임 및 애플리케이션 관리를 돕기 위해 오라클 클라우드 인프라스트럭처(OCI)의 새로운 네이티브 서비스인 자바 매니지먼트 서비스(JMS)도 공개했다. JMS는 전사적인 자바 배포 관리에 필요한 정보를 제공하며 OCI 워크로드 및 자바 SE 구독자들은 해당 서비스를 함께 사용할 수 있다.
자바 18은 오픈JDK 프로젝트 및 자바 커뮤니티 프로세스(JCP)를 통한 오라클 엔지니어들과 전 세계 자바 개발자 공동체 일원들의 폭넓은 협업을 바탕으로 탄생했다.
JEP 400은 UTF-8 기본값 지정이다. UTF-8을 표준 자바 API의 기본 문자셋(charset)으로 설정한다. 이 변화를 통해 기본 캐릭터 값에 의존하는 API들이 모든 구현물들, 운영체제, 로케일, 구성 전반에서 일관성 있게 작동하게 된다.
간이 웹 서버(JEP 408)는 정적 파일만을 처리하는 미니멀 웹 서버를 시작하는 명령줄 도구 및 API다. 이 도구는 특히 교육 환경에서 프로토타입 생성, 임시 코딩, 테스트 목적으로 사용하기에 알맞다.
JEP 416는 메소드 핸들로 코어 리플랙션을 재구현하는 것이다. java.lang.reflect의 메소드 및 생성자(Constructor), 필드를 java.lang.invoke 메소드 핸들 위에 재구현한다. 메소드 핸들을 리플랙션의 기저 매커니즘으로 활용함으로써 java.lang.reflect 및 java.lang.invoke API의 유지 및 개발 비용을 절감할 수 있다.
JEP 418는 인터넷 주소 조정 SPI 기능이다. 호스트 이름 및 주소 확인을 위한 SPI를 정의하여 java.net.InetAddress가 플랫폼의 내장 확인자 외의 확인자들을 활용 할 수 있게 해준다.
다음 JDK 버전 미리보기 및 인큐베이터로는 백터 API(JEP 417)가 세번째 인큐베이터로 소개됐다. 확장성 있는 벡터 확장을 제공하는 CPU 아키텍처를 안정적으로 활용할 수 있는 API를 개발자들에게 제공한다. 이를 통해 비확장 프로세서상에서의 동일 수준 연산 작업 대비 탁월한 성능을 발휘할 수 있다.
외부 함수 및 메모리 API(JEP 419)는 자바 프로그램이 자바 런타임 외부의 코드 및 데이터와 상호 운용 가능하게 해준다. JVM 외부의 코드와 같은 외부 함수를 효율적으로 적용하고, 외부 메모리(JVM이 관리하지 않는 메모리)에 보안 접근함으로써, API는 자바 프로그램이 네이티브 라이브러리를 호출하거나 네이티브 데이터를 처리하는 과정에서 발생 가능한 자바 네이티브 인터페이스(JNI)의 불안정성과 위험을 방지한다.
스위치 문을 위한 패턴 매칭(JEP 420)은 스위치 표현 및 명령문을 위한 패턴 매칭을 통해 자바 프로그래밍 언어를 개선하고, 패턴 언어를 확장한다. 스위치를 위한 패턴 매칭 확장은 수많은 패턴에 대한 각각의 표현을 특정한 작업을 통해 테스트함으로써 복잡한 데이터 중심의 쿼리를 간결하고 정확하게 표현할 수 있게 해준다.
현재 자바는 종료 기능을 기본 활성화하지만 테스트를 위해 사용 중단할 수 있다. 이후 버전에서 종료 기능 비활성화가 기본값으로 설정되고 향후 삭제될 예정이다. 종료 기능에 의존하는 라이브러리 및 애플리케이션 유지관리자는 타 리소스 관리 기술로의 마이그레이션을 고려해야 한다..
조지 사브 오라클 자바플랫폼그룹 소프트웨어개발 부사장은 이날 한국기자단과 간담회에서 “자바 18은 오라클이 6개월마다 기업 및 개발자들에게 더욱 개선된 기능을 신속하게 제공하겠다는 약속을 지속적으로 지켜 나가고 있음을 여실히 입증하고 있다"며 “우리는 지속적인 기술 투자를 통해 자바 개발 키트뿐만 아니라 자바 SE 플랫폼의 성능과 안정성, 보안성을 끊임없이 향상시키고 있다”고 밝혔다.
관련기사
- 오라클, 자바 17 공개2021.09.17
- 오라클, OCI 교육·자격증 프로그램 무료 제공2021.09.09
- 쓸 땐 좋았는데...'오픈소스 보안' 문제 환기한 로그4j2021.12.29
- MS, 자체 오픈JDK 출시2021.05.26
그는 "사용량을 기준으로 요금이 부과되기 때문에 요금 예측이 가능한 오라클 자바 SE 구독 서비스는 고객들에게 업계 최고 수준의 지원 서비스와 그랄VM 엔터프라이즈 권한, 자바 매니지먼트 서비스에 대한 액세스 권한, 비즈니스 성장 속도에 맞춘 유연한 업그레이드 서비스를 제공한다"며 "이를 통해 오라클은 IT 기업들이 복잡성과 비용을 관리하고 보안 관련 위험을 방지할 수 있도록 지원하고 있다"고 강조했다.
오라클은 자바 플랫폼 버전 릴리스 주기를 6개월로 운영하고 있다. 3년의 기본 기술지원을 제공하는 장기지원(LTS) 버전의 최신 릴리스는 자바 17이며, 다음 LTS 버전은 2023년 9월로 예정된 '자바 21'이다.