-
Null Safety๋ ๋ฌด์์ธ๊ฐ? ๊ฐ๋ ๋ถํฐ ์ค์ ์์๊น์ง
1. Null Safety์ ์ ์
**Null Safety(๋ ์์ ์ฑ)**๋ ํ๋ก๊ทธ๋จ์ด ์คํ๋๋ ๋์ค์
null(ํน์nil,None๋ฑ ์ธ์ด๋ณ ๋ช ์นญ์ ๋ค๋ฅด์ง๋ง “๊ฐ์ด ์์"์ ์๋ฏธํ๋ ํน์ ๊ฐ)์ ์ฐธ์กฐํจ์ผ๋ก์จ ๋ฐ์ํ๋ ์ค๋ฅ๋ฅผ **์ปดํ์ผ ํ์(์ฝ๋ ์์ฑ ์์ )**์ ๋ฏธ๋ฆฌ ๋ฐฉ์งํ๋๋ก ์ค๊ณ๋ ์ธ์ด์ ๊ธฐ๋ฅ ๋๋ ํ๋ก๊ทธ๋๋ฐ ์์น์ ๋งํฉ๋๋ค.๊ฐ์ฅ ๋ํ์ ์ธ ๋ฌธ์ ๊ฐ ๋ฐ๋ก NullPointerException(NPE) ์ ๋๋ค. ์๋ฐ์ ์ฐฝ์์ ์ค ํ ๋ช ์ธ ํ ๋ ํธ์ด(Tony Hoare)๋ 1965๋ Null ์ฐธ์กฐ๋ฅผ ๋ฐ๋ช ํ ๊ฒ์ ๋๊ณ ์ค์ค๋ก “10์ต ๋ฌ๋ฌ์ง๋ฆฌ ์ค์(Billion Dollar Mistake)” ๋ผ๊ณ ํํํ ์ ๋๋ก, null๋ก ์ธํ ๋ฒ๊ทธ๋ ์ํํธ์จ์ด ๊ฐ๋ฐ ์ญ์ฌ์์ ๊ฐ์ฅ ํํ๊ณ ๋น์ฉ์ด ํฐ ์ค๋ฅ ์ค ํ๋์์ต๋๋ค.
-
Spring Boot 4.0์ด 2025๋ 11์ 20์ผ GA(General Availability, ์ ์ ์์ ๋ฒ์ ) ๋ก ์ถ์๋์์ต๋๋ค. Spring Boot 3.5.x ๋๋น ๊ฝค ํฐ ๋ณํ๊ฐ ์์ด, ์ฃผ์ ์ฐจ์ด์ ์ ์ฉ์ด ์ค๋ช ๊ณผ ํจ๊ป ์ ๋ฆฌํ์ต๋๋ค.
๋ฆด๋ฆฌ์ฆ & ์ง์ ์ฃผ๊ธฐ
Spring Boot 3.5.x Spring Boot 4.0 ์ํ ์์ ๋ฒ์ GA (2025.11.20 ์ถ์) OSS ์ง์ ์ข ๋ฃ 2026๋ 6์ ํ์ฌ ํ์ฑ ์ง์ ์ค โ ๏ธ Spring Boot 3.5.x๋ 2026๋ 6์์ ์ง์์ด ์ข ๋ฃ๋ฉ๋๋ค. ํ๋ก๋์ ์๋น์ค๋ผ๋ฉด ๋ง์ด๊ทธ๋ ์ด์ ๊ณํ์ ๋ฏธ๋ฆฌ ์ธ์๋๋ ๊ฒ์ด ์ข์ต๋๋ค.
Java & ํ๋ซํผ ๊ธฐ์ค์
- Java ์ต์ ์๊ตฌ ๋ฒ์ : 17 (3.5์ ๋์ผ)
- Java 25 first-class ์ง์ ์ถ๊ฐ โ AOT ์ปดํ์ผ ๋ฐ GraalVM ๋ค์ดํฐ๋ธ ์ด๋ฏธ์ง๊ฐ Java 25 ๊ธฐ์ค์ผ๋ก ํ ์คํธ๋จ
- Jakarta EE ๊ธฐ์ค์ด 11๋ก ์ํฅ โ Hibernate 7.x, Bean Validation 3.1, Tomcat 11 ํ์
โ ๏ธ
javax.*์ํฌํธ๊ฐ ์์ง ๋จ์์๋ค๋ฉด ์ ๋ถjakarta.*๋ก ๊ต์ฒดํด์ผ ํฉ๋๋ค.