JDK 27 정리: Compact Object Headers와 G1이 기본값이 됐다
JDK 27 JEP 9개 중 정식은 넷. G1과 Compact Object Headers가 기본값이 됐습니다. 25.0.4와 실측 비교.
Java 언어 자체와 객체지향 설계, 예외 처리 등 프레임워크에 기대지 않는 기본기를 다룹니다.
JDK 27 JEP 9개 중 정식은 넷. G1과 Compact Object Headers가 기본값이 됐습니다. 25.0.4와 실측 비교.
엔티티를 data class로 바꿨더니 Set이 자기 안에 든 객체를 못 찾았습니다. 무엇이 생성되는지 디컴파일해서 원인을 찾았습니다.
널 안전 언어라는 코틀린에서 NPE를 만났습니다. 디컴파일해 보니 원인은 자바에서 받은 값이었고, 타입 한 줄로 예외 메시지가 달라졌습니다.
아키텍처 규칙을 테스트로 만드는 라이브러리입니다. 바이트코드를 읽는 방식이 정말 더 정밀한지 궁금해서 직접 돌려봤더니, 소스에 있는 import를 못 보는 경우가 있었습니다.
JDK 24의 JEP 491로 synchronized pinning이 사라졌습니다. 지금 검색되는 가상 스레드 조언 절반이 낡았고, 진짜 병목은 커넥션 풀로 옮겨갔습니다.
Java 25 LTS의 JEP 18개 중 지금 바로 쓸 수 있는 것과 아직 프리뷰인 것을 구분했습니다. Scoped Values는 정식, 구조적 동시성은 아직 5번째 프리뷰입니다.
자바(Java) 백엔드 개발자 면접에서 가장 변별력 있는 질문 중 하나이자, 실무에서 데이터 불일치(Data Inconsistency) 문제를 일으키는 주범인 “예외 처리와 트랜잭션 […]
자바(Java) 개발자라면 누구나 한 번쯤은 마주치고, 가장 피하고 싶어 하는 에러가 있습니다. 바로 NullPointerException (NPE)입니다. 개발자들 사이에서는 농담 삼아 ‘자바 […]
개발자로서 경력이 쌓일수록 “돌아가는 코드”를 만드는 것보다 “유지보수가 쉬운 코드”를 만드는 것이 훨씬 어렵고 중요하다는 사실을 깨닫게 됩니다. 기능 하나를 […]
소프트웨어 개발 분야, 특히 엔터프라이즈 급의 백엔드 시스템 구축에서 자바(Java)는 여전히 독보적인 위치를 차지하고 있는 언어입니다. 자바가 이토록 오랫동안 사랑받을 […]