Community

๐ŸŽ‰ Java ๊ฐ€์ƒ ์Šค๋ ˆ๋“œ๊ฐ€ JDK 21 ์— ์ •์‹ ์ง€์› ๋ฉ๋‹ˆ๋‹ค

์ œ๊ฐ€ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ๊ธฐ๋‹ค๋ฆฌ๋˜ ๊ฐ€์ƒ ์Šค๋ ˆ๋“œ(a.k.a project loom)๊ธฐ๋Šฅ์ด ๋“œ๋””์–ด ์ •์‹ ์ง€์›์„ ๋ˆˆ์•ž์— ๋‘๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. JDK 19, JDK 20 ์—์„œ ํ”„๋ฆฌ๋ทฐ๋กœ ๊ณต๊ฐœ๋œ ์ดํ›„ ์ตœ์ข… ๋ฆด๋ฆฌ์ฆˆ์ด๊ณ  JDK 21 ์€ ์žฅ๊ธฐ์ง€์›(LTS)์ด ํ™•์ •๋œ ๋ฒ„์ „์ด๋ผ ํ•ด๋‹น ๋ฒ„์ „์„ ๊ธฐ์ ์œผ๋กœ Java ์ง„์˜์— ๋‹ค์‹œํ•œ๋ฒˆ ํฐ ๋ณ€ํ™”๊ฐ€ ๋‹ค๊ฐ€์˜ฌ ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค. ๊ณต์œ ๋“œ๋ฆฐ ๊ธฐ์‚ฌ์—์„œ๋Š” ์ƒˆ๋กœ์šด ๋™์‹œ์„ฑ ์‹œ๋Œ€์˜ ์‹œ์ž‘์ด๋ผ๊ณ  ํ‘œํ˜„ํ•  ๋งŒํผ ํ•ด๋‹น ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ๊ธฐ๋Œ€๊ฐ€ ํฝ๋‹ˆ๋‹ค. JDK 21 ๋ถ€ํ„ฐ Java ๋Š” ํ”Œ๋žซํผ ์“ฐ๋ ˆ๋“œ์™€ ๊ฐ€์ƒ ์“ฐ๋ ˆ๋“œ๋ผ๋Š” 2์ข…๋ฅ˜์˜ ์“ฐ๋ ˆ๋“œ๋ฅผ ์ง€์›ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ํ”Œ๋žซํผ ์“ฐ๋ ˆ๋“œ๋Š” OS ์“ฐ๋ ˆ๋“œ์— ๋Œ€ํ•œ 1๋Œ€1 ๋งคํ•‘์ด๊ณ , ๊ฐ€์ƒ ์“ฐ๋ ˆ๋“œ๋Š” Java ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ฒฝ๋Ÿ‰ ์“ฐ๋ ˆ๋“œ๋กœ ํ•˜๋‚˜์˜ OS ์“ฐ๋ ˆ๋“œ ๋‚ด์—์„œ ๊ฐ€์ƒ ์“ฐ๋ ˆ๋“œ 1๋งŒ๊ฐœ๋ฅผ ๋™์‹œ ์‹คํ–‰ ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํ”Œ๋žซํผ ์“ฐ๋ ˆ๋“œ, ๊ฐ€์ƒ ์“ฐ๋ ˆ๋“œ ๋‘˜๋‹ค ๊ธฐ์กด๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ThreadLocal/InheritableThreadLocal ๋ณ€์ˆ˜๋ฅผ ์ง€์›ํ•˜๊ณ  java.util.concurrent, java.net, java.nio.channels ํŒจํ‚ค์ง€๋“ฑ๋„ ์ง€์›ํ•˜์—ฌ ๊ตฌ์กฐ์ ์ธ ํฐ ๋ณ€ํ™” ์—†์ด ๊ฐ€์ƒ ์“ฐ๋ ˆ๋“œ๋กœ์˜ ์ „ํ™˜์ด ๊ฐ€๋Šฅํ•  ๊ฒƒ์œผ๋กœ ๋ณด์—ฌ์ง‘๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๊ณต์œ ๋“œ๋ฆฐ ๊ธฐ์‚ฌ์— ์ •๋ฆฌ๋˜์–ด ์žˆ์œผ๋‹ˆ ๊ด€์‹ฌ์žˆ์œผ์‹  ๋ถ„๋“ค๊ป˜์„œ๋Š” ํ•œ๋ฒˆ ์ฝ์–ด๋ณด์‹œ๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค. ๐Ÿ“š ํ•จ๊ป˜ ๋ณด๋ฉด ์ข‹์€ ๊ธ€ - JDK 20 ์ด Release ๋˜์—ˆ์Šต๋‹ˆ๋‹ค! : https://careerly.co.kr/comments/80066?utm_campaign=self-share - Java ์˜ Project Loom ์ด ๋งŒ๋“ค์–ด์ง€๊ณ  ์žˆ์–ด์š”! : https://careerly.co.kr/comments/63588?utm_campaign=self-share

์•Œ๋ฆผ

์•Œ๋ฆผ์ด ์—†์Šต๋‹ˆ๋‹ค