CodeGym /Java Blog /๋ฌด์ž‘์œ„์˜ /๋“ค์„ ๋‚ด์šฉ: Java ํ”„๋กœ๊ทธ๋ž˜๋จธ ๋ฐ ๊ธฐ์ˆ  ์ „๋ฌธ๊ฐ€๋ฅผ ์œ„ํ•œ ์ตœ๊ณ ์˜ ํŒŸ์บ์ŠคํŠธ
John Squirrels
๋ ˆ๋ฒจ 41
San Francisco

๋“ค์„ ๋‚ด์šฉ: Java ํ”„๋กœ๊ทธ๋ž˜๋จธ ๋ฐ ๊ธฐ์ˆ  ์ „๋ฌธ๊ฐ€๋ฅผ ์œ„ํ•œ ์ตœ๊ณ ์˜ ํŒŸ์บ์ŠคํŠธ

๋ฌด์ž‘์œ„์˜ ๊ทธ๋ฃน์— ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค
๋ ˆ์˜ค๋‚˜๋ฅด๋„ ๋‹ค๋นˆ์น˜๋Š” โ€œ๋ฐฐ์›€์€ ๊ฒฐ์ฝ” ์ •์‹ ์„ ์†Œ์ง„์‹œํ‚ค์ง€ ์•Š๋Š”๋‹คโ€๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์—ญ์‚ฌ์ƒ ๊ฐ€์žฅ ์œ„๋Œ€ํ•œ ์ฒœ์žฌ ์ค‘ ํ•œ ๋ช…๊ณผ ๋…ผ์Ÿํ•˜๋ ค๋Š” ๊ฒƒ์ด ์•„๋‹ˆ์ง€๋งŒ CodeGym๊ณผ ๊ฐ™์ด ๋ถ€๋“œ๋Ÿฝ๊ณ  ์ •๊ตํ•œ ํ•™์Šต ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋”๋ผ๋„ ํ•ญ์ƒ ๋ฐฐ์šฐ๋Š” ๊ฒƒ์€ ํ”ผ๊ณคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค์–‘ํ•œ ์ •๋ณด ์ถœ์ฒ˜๋ฅผ ์‹œ๋„ํ•˜๊ณ  ๋•Œ๋•Œ๋กœ ์ƒˆ๋กœ์šด ํ•™์Šต ๋ฐฉ๋ฒ•์„ ๋ฐœ๊ฒฌํ•˜๋Š” ๊ฒƒ์ด ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ์–ผ๋งˆ ์ „์— ์šฐ๋ฆฌ๋Š” Java ๊ฐœ๋ฐœ์ž๊ฐ€ ์ •๋ณด๋ฅผ ์–ป๊ณ  ๋ฐฐ์šธ ์ˆ˜ ์žˆ๋Š” ์ตœ๊ณ ์˜ YouTube ์ฑ„๋„ ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ–ˆ์Šต๋‹ˆ๋‹ค . ์ด๋ฒˆ์—๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ๋“ค ์‚ฌ์ด์—์„œ ๋งค์šฐ ์ธ๊ธฐ๊ฐ€ ์žˆ์–ด ์ถ”๊ฐ€ ์ •๋ณด ์†Œ์Šค๋กœ ์ •๋ง ์œ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค๋ฅธ ์ข…๋ฅ˜์˜ ๋ฏธ๋””์–ด๋ฅผ ๋‹ค๋ฃจ๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜ค๋Š˜์€ Java ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ์ตœ๊ณ ์˜ ํŒŸ์บ์ŠคํŠธ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.๋“ค์„ ๋‚ด์šฉ: Java ํ”„๋กœ๊ทธ๋ž˜๋จธ ๋ฐ ๊ธฐ์ˆ  ์ „๋ฌธ๊ฐ€๋ฅผ ์œ„ํ•œ ์ตœ๊ณ ์˜ ํŒŸ์บ์ŠคํŠธ - 1

ํ”„๋กœ๊ทธ๋ž˜๋จธ๋ฅผ ์œ„ํ•œ ์ตœ๊ณ ์˜ 5๋Œ€ ํŒŸ์บ์ŠคํŠธ

Java์—๋งŒ ๊ตญํ•œ๋˜์ง€ ์•Š๊ณ  ์ผ๋ฐ˜์ ์œผ๋กœ ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํŒŸ์บ์ŠคํŠธ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์š”์ฆ˜ ์ฝ”๋”๋ฅผ ์œ„ํ•œ ํ›Œ๋ฅญํ•œ ํŒŸ์บ์ŠคํŠธ๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์•„์„œ ์„ ํƒํ•˜๊ธฐ๊ฐ€ ์‰ฝ์ง€ ์•Š์•˜์ง€๋งŒ ์ƒ์œ„ 5๊ฐœ๋ฅผ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.

5. ๋‚˜์—๊ฒŒ ํŒŒ์ด์ฌ์„ ๋งํ•ด์ค˜

์„ธ๊ณ„์—์„œ ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ์ค‘ ํ•˜๋‚˜์ด์ž ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์—์„œ Java์˜ ์ฃผ์š” ๊ฒฝ์Ÿ์ž์ธ Python์— ๋Œ€ํ•œ ์ตœ๊ณ ์˜ ํŒŸ์บ์ŠคํŠธ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. Talk Python to Me๋Š” 2015๋…„ ์ˆ™๋ จ๋œ Python ๊ฐœ๋ฐœ์ž์ธ Michael Kennedy๊ฐ€ ์ ์ ˆํ•œ Python ํŒŸ์บ์ŠคํŠธ์˜ ๋ถ€์กฑ์— ์ขŒ์ ˆํ•˜์—ฌ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ์˜ ์‡ผ์—์„œ Michael์€ ๋ถ„๋ช…ํžˆ Python์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜์ง€๋งŒ AngularJS, DevOps, MongoDB ๋“ฑ๊ณผ ๊ฐ™์€ ๋‹ค๋ฅธ ๊ด€๋ จ ์ฃผ์ œ๋„ ์ž์ฃผ ๋‹ค๋ฃน๋‹ˆ๋‹ค.

4. ์”จํ”ผ์บ์ŠคํŠธ

CppCast๋Š” C++ ๊ฐœ๋ฐœ์ž์™€ ์ด ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ๊ณ„์—ด์— ๊ด€์‹ฌ์ด ์žˆ๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ํŒŸ์บ์ŠคํŠธ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. C++ ๋ฐ ๋ชจ๋“  ๊ด€๋ จ ๊ธฐ์ˆ ์— ๋Œ€ํ•œ ๋งค์šฐ ํ›Œ๋ฅญํ•œ ์ •๋ณด ์†Œ์Šค์ž…๋‹ˆ๋‹ค. ๊ฐ ํŒŸ์บ์ŠคํŠธ์˜ ๊ธธ์ด๋Š” 30~60๋ถ„์ž…๋‹ˆ๋‹ค.

3. ๋”๊ทธ ๋กœ๊ทธ

์ด์ƒํ•˜๊ฒŒ๋„ ๊ฒŒ์ž„ ๊ฐœ๋ฐœ์— ๋Œ€ํ•œ ์ข‹์€ ํŒŸ์บ์ŠคํŠธ๊ฐ€ ๊ทธ๋ฆฌ ๋งŽ์ง€ ์•Š์œผ๋ฏ€๋กœ ์ด ํ‹ˆ์ƒˆ ์‹œ์žฅ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๊ฒŒ์ž„ ๊ฐœ๋ฐœ ๋ฐ ๊ธฐ์ˆ ์— ๊ด€์‹ฌ์ด ์žˆ๋‹ค๋ฉด The Debug Log๋ฅผ ํ™•์ธํ•ด ๋ณผ ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํŒŸ์บ์ŠคํŠธ๋Š” Unity ์—”์ง„์„ ์‚ฌ์šฉํ•œ ๊ฒŒ์ž„ ๊ฐœ๋ฐœ์— ์ค‘์ ์„ ๋‘์ง€๋งŒ ๋•Œ๋•Œ๋กœ ํ˜ธ์ŠคํŠธ์™€ ๊ฒŒ์ŠคํŠธ๊ฐ€ ๋‹ค๋ฅธ ๊ฒŒ์ž„ ์—”์ง„์— ๋Œ€ํ•ด์„œ๋„ ์ด์•ผ๊ธฐํ•ฉ๋‹ˆ๋‹ค.

2. ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด๋ง ๋ผ๋””์˜ค

์ „๋ฌธ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ๋งค์šฐ ์ธ๊ธฐ ์žˆ๋Š” ํŒŸ์บ์ŠคํŠธ์ž…๋‹ˆ๋‹ค. ๊ฐ ์—ํ”ผ์†Œ๋“œ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด, ํ”„๋ ˆ์ž„์›Œํฌ, ํด๋ผ์šฐ๋“œ ๊ธฐ์ˆ  ๋“ฑ๊ณผ ๊ฐ™์€ ํŠน์ • ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ์ฃผ์ œ์— ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค. ๋˜ํ•œ Software Engineering Radio๋Š” ์ข…์ข… ์ „๋ฌธ๊ฐ€ ๋ฐ ์ˆ™๋ จ๋œ ๊ฐœ๋ฐœ์ž์™€์˜ ํ›Œ๋ฅญํ•œ ์‹ฌ์ธต ์ธํ„ฐ๋ทฐ๋ฅผ ์ฃผ์ตœํ•ฉ๋‹ˆ๋‹ค.

1. ํ’€ ์Šคํƒ ๋ผ๋””์˜ค

ํ’€์Šคํƒ ๊ฐœ๋ฐœ์ž, ๊ธฐ๊บผ์ด ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๊ณ ์ž ํ•˜๋Š” ์‚ฌ๋žŒ, ์ผ๋ฐ˜์ ์œผ๋กœ ๋Œ€๊ทœ๋ชจ ์†Œํ”„ํŠธ์›จ์–ด ์ œํ’ˆ ๊ฐœ๋ฐœ์— ๋Œ€ํ•ด ๋ฐฐ์šฐ๋Š” ๋ฐ ๊ด€์‹ฌ์ด ์žˆ๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์„ ์œ„ํ•œ ์ตœ๊ณ ์˜ ํŒŸ์บ์ŠคํŠธ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ˜ธ์ŠคํŠธ๋Š” ํ’€์Šคํƒ ๊ฐœ๋ฐœ์ž์ด์ž ๊ธฐ์—…๊ฐ€์ธ Adam Wathan์ž…๋‹ˆ๋‹ค. ๊ฐ ์—ํ”ผ์†Œ๋“œ์—์„œ Adam์€ ๊ฒŒ์ŠคํŠธ๋ฅผ ์ธํ„ฐ๋ทฐํ•˜์—ฌ ๊ฐ€๋ณ๊ณ  ์‰ฌ์šด ๋ฐฉ์‹์œผ๋กœ ๋‹ค์–‘ํ•œ ์ฃผ์ œ์— ๋Œ€ํ•ด ๋…ผ์˜ํ•ฉ๋‹ˆ๋‹ค.

Java ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ์ตœ๊ณ ์˜ ํŒŸ์บ์ŠคํŠธ 5๊ฐœ

Java์—๋งŒ ์ดˆ์ ์„ ๋งž์ถ˜ ํ›Œ๋ฅญํ•œ ํŒŸ์บ์ŠคํŠธ๋Š” ๊ทธ๋ฆฌ ๋งŽ์ง€ ์•Š์ง€๋งŒ ์ƒ์œ„ 5๊ฐœ ๋ชฉ๋ก์— ๋“ค๊ธฐ์— ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ ์žˆ์Šต๋‹ˆ๋‹ค.

5. ์ž๋ฐ” ์กฑ์†

Java Posse๋Š” 2015๋…„์— ๋…น์Œ์„ ์ค‘๋‹จํ–ˆ์ง€๋งŒ ์—ฌ์ „ํžˆ ์ตœ๊ณ ์˜ Java ์ค‘์‹ฌ ํŒŸ์บ์ŠคํŠธ ์ค‘ ํ•˜๋‚˜๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค. Java Posse์˜ ๋ชจ๋“  461๊ฐœ ์—ํ”ผ์†Œ๋“œ๋Š” ์˜จ๋ผ์ธ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ง€๊ธˆ์€ ์•ฝ๊ฐ„ ๊ตฌ์‹์ด์ง€๋งŒ ์œ ์šฉํ•œ ์ •๋ณด๋ฅผ ๋งŽ์ด ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Java Posse์˜ ์ž์Šต์„œ ๋ฐ ๊ฐ€์ด๋“œ๋Š” 2020๋…„์—๋„ Java ์ดˆ๋ณด์ž์—๊ฒŒ ๋„๋ฆฌ ๊ถŒ์žฅ๋ฉ๋‹ˆ๋‹ค.

4. ์ž๋ฐ” ์˜คํ”„ํž™

Java Off-Heap์€ Java ์ „๋ฌธ๊ฐ€๋ฅผ ์œ„ํ•œ ์ตœ์‹  ๊ธฐ์ˆ  ๋‰ด์Šค์— ์ดˆ์ ์„ ๋งž์ถ˜ ์œ ๋ช…ํ•œ ํŒŸ์บ์ŠคํŠธ์ž…๋‹ˆ๋‹ค. Java Off-Heap์€ ์‹œ์นด๊ณ ์˜ 4๋ช…์˜ Java ์—”์ง€๋‹ˆ์–ด๊ฐ€ ์ฃผ์ตœํ•˜๋ฉฐ ๋•Œ๋•Œ๋กœ ์‡ผ์— ๊ฒŒ์ŠคํŠธ๋ฅผ ์ดˆ๋Œ€ํ•˜๊ณ  Java ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ ์ง„ํ–‰๋˜๊ณ  ์žˆ๋Š” ์ค‘์š”ํ•œ ๋ชจ๋“  ๊ฒƒ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•ฉ๋‹ˆ๋‹ค.

3. Java Podcast๋กœ ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•˜๋Š” ๋ฐฉ๋ฒ•

ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ๋ฐ ๊ด€๋ จ ๊ธฐ์ˆ ๋กœ์„œ Java์˜ ๋ชจ๋“  ๊ธฐ๋ณธ ์ธก๋ฉด์— ๋Œ€ํ•œ ๋‹จ๊ณ„๋ณ„ ๊ฐ€์ด๋“œ ๋ฐ ์ž์Šต์„œ๊ฐ€ ํฌํ•จ๋œ Java ์ดˆ๋ณด์ž๋ฅผ ์œ„ํ•œ ๋งค์šฐ ์ ์ ˆํ•œ ํŒŸ์บ์ŠคํŠธ์ž…๋‹ˆ๋‹ค. Java์˜ ๊ธฐ์ดˆ๋ฅผ ์•„์ง ๋ฐฐ์šฐ๊ณ  ์žˆ๋‹ค๋ฉด ์‹œ์ž‘ํ•˜๊ธฐ์— ๊ฐ€์žฅ ์ข‹์€ ์„ ํƒ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

2. Adam Bien๊ณผ ํ•จ๊ป˜ํ•˜๋Š” Airhacks.fm ํŒŸ์บ์ŠคํŠธ

Java ๋ฐ JavaScript ๊ฐœ๋ฐœ์˜ ๋ฒ ํ…Œ๋ž‘์ธ Adam Bien์˜ ๊ฝค ํ›Œ๋ฅญํ•œ ํŒŸ์บ์ŠคํŠธ์ž…๋‹ˆ๋‹ค. ๊ทธ์˜ ํŒŸ์บ์ŠคํŠธ์—์„œ Adam์€ ์ฃผ๋กœ Java, Java EE, Jakarta EE, MicroProfile ๋ฐ ์›น ๊ฐœ๋ฐœ๊ณผ ๊ด€๋ จ๋œ ์ฃผ์ œ์— ์ง‘์ค‘ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์‡ผ์˜ ๊ฐ ์—ํ”ผ์†Œ๋“œ์—๋Š” ์ƒˆ๋กœ์šด ๊ฒŒ์ŠคํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

1. ์ž๋ฐ” ํŽ ํ•˜์šฐ์Šค

Java Pub House๋Š” Java ๋ฐ Java ๊ด€๋ จ ๋„๊ตฌ์™€ ๊ธฐ์ˆ ์— ๋Œ€ํ•œ ํ† ๋ก ๊ณผ ์ž์Šต์„œ๊ฐ€ ์žˆ๋Š” ํ˜„์žฌ ๊ฐ€์žฅ ํ™œ๋ฐœํ•œ ํŒŸ์บ์ŠคํŠธ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค. Freddy Guime๊ณผ Bob Paulin์ด ์ฃผ์ตœํ•˜๋Š” ์ด ํŒŸ์บ์ŠคํŠธ๋Š” Java ์ดˆ๋ณด์ž์™€ ์ˆ™๋ จ๋œ ํ”„๋กœ๊ทธ๋ž˜๋จธ ๋ชจ๋‘์—๊ฒŒ ์ข‹์Šต๋‹ˆ๋‹ค. ๊ฐ ์—ํ”ผ์†Œ๋“œ์—์„œ๋Š” Java ๊ฐœ๋ฐœ์ž๊ฐ€ ์ผ์ƒ ์—…๋ฌด์—์„œ ์ง๋ฉดํ•˜๋Š” ์‹ค์ œ ๋ฌธ์ œ๋ฅผ ๋‹ค๋ฃจ๊ณ  Java ๊ฐœ๋ฐœ ์‚ฐ์—…๊ณผ ๊ด€๋ จ๋œ ๊ฐ€์žฅ ์ค‘์š”ํ•˜๊ณ  ํฅ๋ฏธ๋กœ์šด ๋‰ด์Šค ๋ฐ ๊ธฐ์ˆ ์— ๋Œ€ํ•ด ๋…ผ์˜ํ•ฉ๋‹ˆ๋‹ค.
์ฝ”๋ฉ˜ํŠธ
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION