Java에서 불변성을 표현하는 주요 도구는 'final' 키워드입니다. 하지만 현재 JVM은 일부 'final' 필드가 변경될 것이라고 가정해야 하며, 이것이 왜 애플리케이션 속도를 저하시키는지 알고 계셨나요? 이 강연에서는 컴파일 타임 보장부터 JVM 동작까지 Java에서 필드 불변성의 의미론과 실질적인 영향에 대해 심층적으로 살펴보겠습니다. 현재 JVM이 final 필드를 처리하는 방식과 이를 활용하여 현재보다 더 빠른 코드를 생성하는 방법을 자세히 살펴보겠습니다. 또한 'final' 키워드의 성능을 향상시키기 위한 최근 노력과 이를 위한 로드맵도 살펴보겠습니다. 마지막으로 Java의 새로운 미리보기 기능인 'Stable Value'가 'final' 필드의 성능을 유지하면서도 가변 필드의 유연성을 어떻게 제공할 수 있는지, 그리고 이것이 어떤 점에서 중요한지 살펴보겠습니다.