오라클, 자바21 출시…8년 기술지원 보장
[라스베이거스(미국)=김우용 기자] 오라클이 최신 장기지원(LTS) 버전인 자바21을 출시했다. 이와 함께 기존 자바11 LTS의 기술지원기간을 2032년으로 8년 더 연장했다. 오라클은 19일(현지시간) 미국 라스베이거스에서 개최한 연례 컨퍼런스 '오라클 클라우드월드2023'에서 자바21 LTS 버전을 출시한다고 발표했다. 자바21은 플랫폼 15가지 새 JEP를 비롯해 각종 성능 향상과 안정성 개선을 포함한다. 눈에 띄는 신기능은 오픈JDK의 앰버(Ambder) 프로젝트다. 앰버 프로젝트는 문자열 템플릿, 레코드 패턴, 스위치용 패턴 일치, 명명되지 않은 패턴 및 변수, 명명되지 않은 클래스 및 인스턴스 기본 메소드 등을 포함하는 프로젝트다. 외부 함수 및 메모리 API, 벡터 API를 다루는 파나마 프로젝트 개선사항과, 가상스레드, 범위 값 및 구조적 동시성을 다루는 룸(Loom) 프로젝트 관련 기능도 포합했다. Z가비지콜렉터(ZGC)를 확장해 절은 객체와 오래된 객체에 별도의 세대를 유지해 애플리케이션 성능을 향상시키는 세대별 ZGC도 포함됐다. 가상스레드(JEP 444)는 자바 플랫폼에 경량의 가상 스레드를 도입한 것이다. 높은 처리량의 동시 애플리케이션을 작성, 유지 관리, 관찰하는 프로세스를 간소화한다. 미리보기인 범위값(JEP 446)은 스레드 내 그리고, 스레드 간 불변 데이터를 공유하게 한다. 개발자 프로젝트의 사용 편의성, 이해성, 견고성, 성능 등을 높여준다. 구조적 동시성(JEP 453)은 동시성 프로그래밍을 단순화한다. 스레드 누수 및 취소 지연 같은 취소 및 셧다운 상황에서 발생하는 일반적 위험을 제거할 수 있다. 에러 관리와 취소를 간소화하고, 신뢰성과 가시성을 개선한다. 문자열 템플릿(JEP 430, 미리보기)은 자바 런타임에 계산된 값을 포함한느 문자열을 쉽게 표현하게 한다. 레코드패턴(JEP 440)은 패턴 일치를 확장해 레코드 클래스의 인스턴스의 구조화를 해제하고, 중첩 패턴을 추가하게 한다. 스위치에 대한 패턴 일치(JEP 441)는 케이스 레이블에 패턴을 표시하도록 허용하고, 스위치 표현식과 문의 표현력과 적용 가능성을 확장한다. 패턴 스위치 문이 가능한 모든 입력값을 포괄하도록 요구함으로써 안정성을 높이고, 기존 모든 스위치 식과 몬을 변경하지 않고 계속 컴파일되게 하고 동일한 의미 체계로 실행될 수 있게 한다. 자바21은 백터API를 도입해 CPU 아키텍처의 벡터 명령으로 안정적으로 컴파일하게 한다. 자바 개발자 공식 사이트인 '데브닷자바(Dev.java)'는 자바 플레이그라운드를 추가했다. 자바 플레이그라운드는 로컬 런타임이나 IDE 없이 작은 자바 코드를 입력하고 실행할 수 있는 온라인 샌드박스다. OCI 기반 브라우저에서 자바21의 새로운 기능을 바로 사용할 수 있다. 오라클은 자바21에 8년의 기술지원을 보장한다. 이와 함께 자바11의 장기지원기간을 2032년 1월까지로 연장했다. 조지 사브 오라클 자바 플랫폼 수석부사장은 "자바는 전세계 조직과 수백만명 개인이 사용하는 강력하고 확장가능하며 안전한 애플리케이션 개발 언어이자 플랫폼"이라며 "자바21의 향상된 기능을 통해 개발자는 이전보다 훨씬 빠르게 더 나은 애플리케이션을 구축할 수 있고, 고객은 자신의 속도에 맞춰 마이그레이션할 수 있도록 최소 8년간 상업적 지원을 제공 받을 수 있다"고 강조했다.