read: fail

2024년 가을 자바 언어 전망

2024년 10월 30일, 개빈 비어만이 발표한 이 강연은 자바 프로그래밍 언어의 최근 변경사항을 요약하고, 향후 버전에서 등장할 개발 중인 방향과 기능들을 전망합니다.

JDK 24 대상 JEP 485: 스트림 수집기

JEP 485: 스트림 수집기는 JDK 24에 포함될 예정입니다. 이 제안은 자바 스트림의 기능을 향상시켜, 개발자들이 스트림의 요소를 Map이나 Set과 같은 사용자 정의 데이터 구조로 쉽게 수집할 수 있게 합니다. 또한, 성능 최적화와 기존 스트림 API와의 호환성 유지에 중점을 두고 있습니다.

가상 스레드가 반응형 프로그래밍을 무의미하게 만들까?

Java 21의 가상 스레드는 '요청당 스레드' 스타일을 통해 하드웨어 활용을 극대화하는 새로운 가능성을 제시합니다. 이 기술은 기존의 반응형 프로그래밍 모델보다 간단한 구조화된 동시성 API를 도입하며, 스코프 값을 통해 완전한 애플리케이션을 구현할 수 있습니다. 이러한 변화가 비동기 프로그래밍 모델을 대체할 수 있을지 주목됩니다.

JEP 489: 벡터 API (9번째 인큐베이터)

JEP 489은 JDK 24를 대상으로 하며, Java에서 벡터 연산을 표현하는 벡터 API에 초점을 맞추고 있습니다. 이 API는 특히 병렬 처리가 가능한 작업에 대해 더 효율적이고 성능이 뛰어난 코드를 가능하게 합니다. 현재 9번째 인큐베이터 릴리스로, 아직 개발 중이며 변경될 수 있습니다.

Jextract - 자바와 네이티브 코드의 보물 찾기

자바 애플리케이션 개발 중에 때때로 C, OpenGL, Tensorflow 같은 다른 프로그래밍 언어로 작성된 시스템 레벨 API와 라이브러리에 접근할 필요가 있습니다. 이를 위해 Project Panama가 개발되었으며, 특히 jextract 도구를 통해 네이티브 코드에 쉽게 접근할 수 있습니다.

튜토리얼: Jextract - 네이티브 라이브러리 바인딩 추출 도구

Jextract 도구는 네이티브 라이브러리의 헤더 파일(.h)을 분석하고 Java 코드를 생성하여, 원하는 네이티브 라이브러리를 Java 모델로 직접 사용할 수 있습니다. 이 튜토리얼에서는 jextract 도구의 활용 방법을 알려드립니다.

StableValue와 SegmentMapper에 대한 첫 번째 미리보기

이 비디오는 Java를 개선하기 위한 두 가지 노력인 StableValues와 SegmentMapper에 대해 설명합니다. StableValue는 @Stable 주석을 안전하게 사용할 수 있게 해주며, SegmentMapper는 FFM API의 유연성을 크게 향상시킵니다.

자바의 병렬 아키텍처 가속을 통한 AI 발전

자바 플랫폼은 머신러닝병렬 처리 수요 증가에 발맞춰 진화하고 있습니다. 최신 플랫폼 개선을 통해 개발자들은 고성능 데이터 기반 애플리케이션을 구축할 수 있게 되었습니다. 특히, SIMD와 SIMT 실행 모델을 지원함으로써, AI 발전을 크게 가속화할 수 있는 기반을 마련하고 있습니다.

JDK 24에 포함될 예정인 JEP 484: 클래스 파일 API

JDK 24에 포함될 예정인 JEP 484: 클래스 파일 API는 자바 클래스 파일을 프로그래밍 방식으로 읽고, 분석하며, 조작할 수 있는 포괄적인 API를 제공하고자 합니다. 이 API는 보다 깊은 분석과 변형을 가능하게 하며, 바이트코드 조작, 정적 분석, 코드 생성 등의 도구 개발을 용이하게 할 것입니다.

개발자들이여, 지금 바로 FOSS 커뮤니티에 기여하라!

이 글은 자바 생태계에서 오픈 소스 소프트웨어(FOSS) 커뮤니티에 기여하는 것의 이점을 설명합니다. 효율적인 학습 기법을 사용하고, 네트워크를 구축하며, FOSS 프로젝트에 기여함으로써 개인의 발전과 커뮤니티, 그리고 고용주에게 혜택을 줄 수 있습니다. 특히 자바 커뮤니티에 기여하는 것은 큰 이점을 가져다 줍니다.

JDK 24 예정 JEP 475: G1의 늦은 배리어 확장

JEP 475은 JDK 24에 포함될 예정이며, Garbage-First (G1) 가비지 컬렉터의 성능을 향상시키기 위해 작성되었습니다. 이 제안은 쓰기 배리어의 확장을 실제 필요할 때까지 지연시켜 메모리 사용량을 줄이고 처리 효율을 높이는 것을 목표로 합니다.

프로젝트 레이든의 새로운 소식 - 자바 뉴스캐스트 #78

이 기사에서는 프로젝트 레이든에 대해 다루고 있습니다. 이 프로젝트는 시작 시간, 최고 성능 도달 시간 개선메모리 사용량 감소에 중점을 두고 있습니다. 2025년 여름에 초기 액세스 빌드를 출시하며, 커뮤니티의 피드백을 기다리고 있습니다.

JDK 24에 포함될 JEP 472: JNI 사용 제한 준비

JEP 472은 JDK 24에 포함될 예정이며, 향후 Java 릴리스에서 Java Native Interface (JNI) 사용을 제한하기 위한 준비를 목표로 합니다. 이 제안은 JNI 사용을 줄이고, Java가 더 안전하고 유지보수가 쉬워지도록 하는 것을 목표로 합니다.

자바와 순환 객체 그래프의 복잡한 관계

자바 프로그램은 서로 참조하는 객체들로 구성되어 '객체 그래프'를 형성합니다. 순환 객체 그래프는 설정하기 쉽지만 예상치 못한 문제를 일으킬 수 있습니다. 가비지 컬렉션은 이를 잘 처리하지만, 레코드, 컬렉션, 자바 직렬화 등 다른 시스템 부분에서는 종종 어려움을 겪습니다. 이러한 문제를 피하면서 순환을 표현하는 기술이 있습니다.

Java Visual Studio Code 확장 프로그램 업데이트

Visual Studio Code의 Oracle Java 확장 프로그램 버전 23.0.0이 출시되었습니다. 이번 업데이트에는 일본어와 간체 중국어 지원, 사용자 프로젝트용 별도 JDK 설정, JDK 다운로드 진행 바, 경고 힌트 숨기기 기능 등이 포함되어 있습니다. 또한, 여러 버그 수정 사항도 포함되어 있습니다.

직렬화 - 새로운 희망

직렬화의 요구사항과 제약이 지난 수십 년간 크게 변화했습니다. 이 발표에서는 자바 언어의 최신 개선 사항이 객체의 구조를 더 간단하고 안전하게 다룰 수 있게 하며, 상태 추출, 인코딩, 재구성의 유연성을 높일 수 있다고 제안합니다. 데이터 중심의 접근 방식을 통해 직렬화를 혁신하자는 주장이 흥미롭습니다.

Devoxx BE에서 페르-아케 민보그와 함께하는 자바 성능 업데이트 라이브 Q&A

2024년 벨기에 Devoxx에서 진행된 페르-아케 민보그의 라이브 Q&A 세션에서는 자바 성능 최적화에 대한 그의 전문 지식과 최신 개발 동향이 공유되었습니다. 이 자리에서 자바의 미래 방향성에 대한 흥미로운 토론이 이루어졌습니다.

Viktor Klang과 함께하는 직렬화 2.0 - Devoxx BE에서의 라이브 Q&A

Viktor Klang과의 라이브 Q&A 세션에서는 직렬화 2.0에 대해 다루었습니다. 이 토론은 직렬화의 중요성, 도전 과제, 그리고 개선 가능성에 대해 포괄적으로 설명합니다. 이 세션은 2024년 벨기에 Devoxx에서 진행되었습니다.

앨런 베이트먼과 함께하는 룸의 다음 단계 - Devoxx BE에서의 라이브 Q&A

앨런 베이트먼과의 라이브 Q&A 세션에서 룸(Loom), 인기 있는 자바 가상 머신(JVM) 기술의 현재 상태와 미래 계획에 대해 논의되었습니다. 이 세션은 개발자와 자바 애호가들에게 룸의 진화와 JVM 생태계에 미칠 잠재적 영향에 대한 귀중한 정보를 제공합니다.

스튜어트 마크스와 함께하는 컬렉션의 미래 - Devoxx BE 라이브 Q&A

자바 컬렉션의 미래에 대해 스튜어트 마크스와 진행한 라이브 Q&A 세션입니다. 이 세션은 2024년 벨기에 Devoxx에서 진행되었습니다.