read: fail

자바와 인공지능? - Inside Java Newscast #72

자바가 인공지능(AI) 개발에서 어떤 역할을 하는지에 대해 다룬 기사입니다. 특히, 기계 학습 모델 개발, AI 중심 제품 개발, 대규모 프로젝트에 AI 기능 추가 등 세 가지 주요 분야에서 자바의 위치와 전망을 설명하고 있습니다. 자바는 특히 대규모 프로젝트에 AI 기능을 추가하는 데 강점을 보이며, 이 분야에서 더욱 강해질 것으로 기대됩니다.

2024년 봄, 자바 언어의 미래

이 기사에서는 자바 프로그래밍 언어의 최근 및 예정된 변화에 대해 살펴봅니다. 저자 개빈 비어만은 자바의 빠른 진화를 강조하며 내년 이후 개발자들이 사용하게 될 새로운 기능들에 대해 설명합니다. 자세한 내용과 자료는 쇼노트에서 확인하세요.

데이터 지향 프로그래밍을 버전 1.1로 업데이트하는 이유

데이터 지향 프로그래밍의 원칙을 버전 1.1로 업데이트한 이유는 데이터의 불변성, 투명성, 그리고 연산의 분리를 더 명확히 하기 위해서입니다. 새로운 버전에서는 데이터 모델링을 더 효과적으로 하여 불법 상태를 표현할 수 없게 만드는 것을 목표로 하고 있습니다. 이러한 변화는 프로그래밍의 효율성을 높이고, 더 나은 데이터 관리를 가능하게 할 것입니다.

퀄리티 아웃리치 소식 - 새로운 레이든 조기 접근 빌드

프로젝트 레이든이 첫 조기 접근 빌드(24-leyden+2-8 2024/6/20)를 발표했습니다. 이 초기 릴리스는 자바 애플리케이션의 시작 시간을 개선하는 데 중점을 두고 있으며, 향후 릴리스에서 다른 레이든 최적화를 탐구할 계획입니다. 레이든 기능을 사용하려면 레이든 조기 접근 릴리스의 java 프로그램을 -XX:CacheDataStore 플래그와 함께 사용하세요.

퀄리티 아웃리치 업데이트 - 새로운 Loom 조기 접근 빌드

OpenJDK 퀄리티 그룹이 FOSS 프로젝트의 테스트를 통해 릴리스의 전반적인 품질을 향상시키고자 합니다. 최근 Loom 프로젝트는 개선된 객체 모니터 구현을 포함한 새로운 조기 접근 빌드를 발표했습니다. 이는 가상 스레드가 특정 상황에서 캐리어 스레드를 고정하는 것을 방지할 수 있습니다.

Jlink를 활용한 맞춤형 자바 런타임 구축 방법

Jlink는 애플리케이션이 필요로 하는 모듈을 기반으로 맞춤형 런타임을 생성하는 JDK의 강력한 도구입니다. 이 글에서는 Jlink의 주요 개념과 이점을 소개하고, 맞춤형 런타임을 만드는 다섯 가지 주요 단계를 설명합니다. 모듈 식별, 의존성 해결, 런타임 이미지 사용자 정의, 최적화, 배포 등의 과정을 통해 효율적인 자바 런타임을 구축할 수 있습니다.

자바 뉴스캐스트 #71: 문자열 템플릿의 운명은?

자바에서 문자열 템플릿 기능이 JDK 21과 22에서 소개되었지만, JDK 23에서 예상치 못하게 제거되었습니다. 이 기사는 그 결정의 이유와 새로운 문자열 템플릿 제안이 어떻게 될지, 그리고 이것이 OpenJDK 개발 과정에 어떤 의미를 가지는지 탐구합니다. 커뮤니티의 피드백기술적 도전이 주요 고려 사항으로 보입니다.

ZGC에서 맞춤형 할당자를 통한 단편화 문제 해결

ZGC와 다른 가비지 수집기는 일반적으로 연속 할당에 효율적인 bump-pointer 할당을 사용하지만, 시간이 지남에 따라 단편화가 발생할 수 있습니다. 이 연구는 TLSF 할당자를 적용하여 ZGC 내에서 단편화된 메모리를 더 효과적으로 관리하고자 합니다. 이는 메모리 효율성을 높이고 비용이 많이 드는 객체의 재배치 필요성을 줄일 수 있습니다.

JDK 23 업데이트: 기본 애노테이션 처리 정책 변경 안내

OpenJDK 품질 그룹은 FOSS 프로젝트의 테스트를 촉진하여 전반적인 품질을 향상시키고 있습니다. JDK 23부터는 javac의 기본 애노테이션 처리 정책이 변경되어, 애노테이션 처리를 활성화하기 위해 추가적인 커맨드라인 옵션이 필요합니다. 이는 무의도적인 클래스 경로 문제를 방지하기 위함입니다.

코드 모델

자바 리플렉션의 발전된 형태인 코드 리플렉션은 메소드 본문과 람다 본문의 자바 코드에 대한 기호적 표현에 접근할 수 있게 해줍니다. 이를 통해 자바 프로그램이 다른 자바 프로그램을 조작할 수 있게 됩니다.

인사이드 자바 뉴스레터: 끊임없는 혁신

자바의 최신 혁신에 초점을 맞춘 2024년 5월 인사이드 자바 뉴스레터! 커뮤니티 수상과 팟캐스트 인터뷰도 포함되어 있어요. 아카이브를 탐색하고 친구에게 보내세요!

힙 값 플랫화를 위한 인코딩 방식

프로젝트 발할라의 주요 목표 중 하나는 값 객체를 힙 컨테이너에 플랫하게 저장하는 것입니다. 이 문서에서는 최대 64비트 또는 128비트의 단일 기계어로 구성된 컨테이너에 대해 다양한 구현 옵션을 논의합니다.

데이터 지향 프로그래밍(DOP) v1.1 사용 시기

데이터 지향 프로그래밍(DOP)은 자바 21+ 버전에서 가장 잘 작동하며, 함수형 프로그래밍(FP)과 객체 지향 프로그래밍(OOP)의 장점을 결합합니다. 데이터 처리, 배치 작업, 이벤트 처리 등에 특히 적합하며, 개발자가 경험을 쌓을수록 DOP의 사용 사례를 더 많이 발견하게 됩니다.

2024년 봄 Java SE 로드맵 업데이트

2024년 6월 8일에 게시된 이 문서는 다음 해를 위한 Oracle Java SE 관련 로드맵 정보를 요약하여 제공합니다. 여러 지원 공고 및 문서로 연결되는 링크가 포함되어 있습니다.

오라클 코드 어시스트 소개

오라클이 개발자들이 더 빠르게 애플리케이션을 개발할 수 있도록 돕기 위해 생성적 AI의 힘을 결합한 AI 동반자, '오라클 코드 어시스트'를 개발 중입니다. 이 새로운 도구에 대한 기대가 큽니다!

Java 23의 모든 기능 - Inside Java Newscast #70

2024년 9월 17일에 출시될 Java 23의 주요 기능이 확정되었습니다. 개선된 Generational ZGC, Markdown을 JavaDoc에 사용 가능, Unsafe 클래스의 일부 메소드 폐지, 문자열 템플릿 기능 제거, 그리고 여러 프리뷰 기능의 발전이 포함되어 있습니다. 자세한 내용은 쇼 노트를 확인하세요!

데이터 중심 프로그래밍 v1.1 - 데이터와 연산 분리하기

데이터 중심 프로그래밍에서는 데이터 레코드에 연산을 정의하지 않고 별도의 클래스에서 처리합니다. 예를 들어, 쇼핑 카트에 아이템을 추가하는 작업은 Item 클래스가 아닌 Orders 클래스에서 처리해야 합니다. 이 방식은 도메인 로직을 데이터 표현으로부터 분리하여 데이터 모델을 단순하고 유지보수하기 쉽게 만듭니다.

JDK 23 대상 JEP 481: 범위 지정 값 (3차 프리뷰)

JDK 23에 포함될 예정인 JEP 481: 범위 지정 값 (3차 프리뷰)은 개발자들이 전역 변수나 스레드-로컬 저장소에 의존하지 않고 호출 스택을 통해 상태를 관리하고 데이터를 전달할 수 있는 새로운 기능을 소개합니다. 이 기능은 상태 관리 방식을 개선하고 더욱 체계적으로 제어할 수 있도록 설계되었습니다.

JDK 23을 위한 JEP 471: sun.misc.Unsafe의 메모리 접근 메소드 폐지 제안

JEP 471은 JDK 23에 포함될 예정이며, sun.misc.Unsafe 클래스의 메모리 접근 메소드를 폐지하기 위해 제안되었습니다. 이 클래스는 시스템 메모리에 직접 접근할 수 있는 낮은 수준의 위험한 작업을 제공하지만, 자바 생태계에서 복잡성과 보안 문제의 원인이 되기도 했습니다. 이 제안은 보다 안전한 API로의 전환을 장려하고 있습니다.

데이터 지향 프로그래밍 v1.1 - 불법 상태를 표현 불가능하게 만들기

데이터 지향 시스템에서는 유효하고 합법적인 상태만을 표현할 수 있도록 데이터 타입을 설계해야 합니다. 경계에서 데이터를 검증하고, 다양한 데이터 유형을 정확하게 모델링하기 위해 씰드 인터페이스와 구체적인 레코드 타입을 사용하세요. 이러한 방법으로 불법 상태를 표현 불가능하게 만드는 것의 중요성을 강조합니다.