CodeGym/Java Blog/๋ฌด์ž‘์œ„์˜/Java ํ•™์Šต์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ์ตœ๊ณ ์˜ ์• ์™„ ๋™๋ฌผ ํ”„๋กœ์ ํŠธ
John Squirrels
๋ ˆ๋ฒจ 41
San Francisco

Java ํ•™์Šต์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ์ตœ๊ณ ์˜ ์• ์™„ ๋™๋ฌผ ํ”„๋กœ์ ํŠธ

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

์ตœ๊ณ ์˜ Java ํ”„๋กœ์ ํŠธ ์•„์ด๋””์–ด

์•„๋ž˜์—์„œ ์ฒซ ์ง์žฅ์„ ๊ตฌํ•˜๊ณ  ๊ฒฝ๋ ฅ ์‚ฌ๋‹ค๋ฆฌ๋ฅผ ์˜ค๋ฅด๋Š” ๋ฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ํฅ๋ฏธ๋กญ๊ณ  ์œ ์šฉํ•˜๋ฉฐ ๋งค๋ ฅ์ ์ธ ํ”„๋กœ์ ํŠธ์˜ ์ตœ์ข… ํ›„๋ณด ๋ชฉ๋ก์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ ํ”„๋กœ์ ํŠธ๋Š” Java ์ดˆ๋ณด์ž๋ถ€ํ„ฐ ์ „๋ฌธ๊ฐ€ ๋ฐ ์ค‘๊ฐ„ ์‚ฌ์šฉ์ž์— ์ด๋ฅด๊ธฐ๊นŒ์ง€ ๋ˆ„๊ตฌ์—๊ฒŒ๋‚˜ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.

๊ฐ„๋‹จํ•œ ์‹ ์ฒญ

๊ธฐ๋ณธ ์‚ฌํ•ญ์ธ ์•ฑ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์•ฑ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์€ ์ฝ”๋”ฉ ๊ธฐ์ˆ ์„ ์—ฐ์Šตํ•˜๊ณ  ๋•Œ๋กœ๋Š” ์ด ์„ธ์ƒ์„ ์กฐ๊ธˆ ๋” ์ข‹๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ƒˆ๋กœ์šด ์•ฑ ์•„์ด๋””์–ด๋ฅผ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒƒ์ด ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์Œ์„ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค. ๊ท€ํ•˜์™€ ์‚ฌ์šฉ์ž(๋˜๋Š” ๊ณ ์šฉ์ฃผ) ๋ชจ๋‘์—๊ฒŒ ๋„ˆ๋ฌด ๋ณต์žกํ•˜์ง€ ์•Š์€ ๊ฐ„๋‹จํ•œ ์•ฑ์œผ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๊ณ„์‚ฐ๊ธฐ , ์œ„์‹œ๋ฆฌ์ŠคํŠธ , ํ• ์ผ ๋ชฉ๋ก ์ฒ˜๋Ÿผ ์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค . ์ด์™€ ๊ฐ™์€ ์•ฑ์€ ์ตœ์‹  ๊ธฐ์ˆ ๊ณผ ๋ฐœ์ „์„ ์‹คํ—˜ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ๋„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ์•ฑ์€ ์ดˆ๋ณด์ž์—๊ฒŒ ์ด์ƒ์ ์ธ ์„ ํƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ๊ธฐ์ˆ ์ด ํ–ฅ์ƒ๋˜๋ฉด ๋ถ„๋‹ด๊ธˆ์„ ์˜ฌ๋ฆฌ๊ณ  ๋ฐ์ดํ„ฐ ๋™๊ธฐํ™” ์•ฑ ์ž‘์„ฑ์„ ์‹œ๋„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.ํ•œ ์†Œ์Šค์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์™€์„œ ๋‹ค๋ฅธ ์†Œ์Šค์— ๋„ฃ๋Š” ๊ฒƒ์„ ์šฉ์ดํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚˜์ค‘์— ๋ฐ์ดํ„ฐ๊ฐ€ ์ดˆ๊ธฐ ์†Œ์Šค์—์„œ ์‚ฝ์ž…, ์—…๋ฐ์ดํŠธ ๋˜๋Š” ์‚ญ์ œ๋  ๋•Œ ์ž๋™์œผ๋กœ ๋Œ€์ƒ, ์ฆ‰ ๋‘ ๋ฒˆ์งธ ๋ฐฑ์—… ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ์ด๋™ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด MySQL, Oracle, DB2 UDB, SQL Server, MongoDB, Couchbase ๋˜๋Š” Cassandra์™€ ๊ฐ™์€ ๋™์ผํ•œ ๋˜๋Š” ๋‘ ๊ฐœ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ SQL์ด๊ณ  ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ NoSQL์ด๋ฉด ์ƒํ™ฉ์ด ์ข€ ๋” ํฅ๋ฏธ๋กœ์›Œ์งˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์•ฑ์—์„œ ์ž‘์—…ํ•˜๋Š” ๋™์•ˆ ๋งŽ์€ ๊ธฐ์ˆ ์— ์ต์ˆ™ํ•ด์ง€๊ณ  SDLC ์ˆ˜๋ช… ์ฃผ๊ธฐ๋ฅผ ์™„๋ฃŒํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๊ด€๋ฆฌ ์‹œ์Šคํ…œ

ํ•™์Šต์ž๋Š” ๊ธฐ์กด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ƒˆ ํ•™์ƒ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ์ง„ํ–‰ ์ค‘์ธ ๊ณผ์ •์— ๋“ฑ๋กํ•˜๊ณ  ๊ฐ ํ•™์Šต์ž์˜ ๊ณ ์œ  ID๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์‹œ์Šคํ…œ์„ ๋งŒ๋“œ๋Š” ๋ฐ ๊ด€์‹ฌ์ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์™€ ๊ฐ™์€ ํ”„๋กœ์ ํŠธ๊ฐœ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐœ๋…์„ ํ™œ์šฉํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋ฉฐ ๋Œ€๋žต 3-4์‹œ๊ฐ„ ์ •๋„ ์†Œ์š”๋ฉ๋‹ˆ๋‹ค. ํ•™์ƒ๋“ค์—๊ฒŒ ์œ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋˜ ๋‹ค๋ฅธ ์ธ๊ธฐ ์žˆ๋Š” Java ํ”„๋กœ์ ํŠธ๋Š” ๋„์„œ๊ด€ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค. ์ „์‚ฐํ™”๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์ƒ๋‹นํ•œ ์‹œ๊ฐ„, ๋…ธ๋ ฅ ๋ฐ ์ธ์  ์ž์›์„ ์ ˆ์•ฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŽœ๊ณผ ์ข…์ด๋กœ ๋งŒ๋“  ๋ชจ๋“  ๊ฒƒ(์ฑ…์˜ ์ˆ˜, ์žฅ๋ฅด, ์ฑ… ์ด๋ฆ„, ์ฑ…์„ ๋ฐœํ–‰/๋ฐ˜๋‚ฉํ•œ ํ•™์ƒ ์ด๋ฆ„ ๋“ฑ)์„ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ํŠน์ • ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ๋‹ค์–‘ํ•œ ๋ชจ๋“ˆ์„ ํฌํ•จํ•˜๊ธฐ ๋•Œ๋ฌธ์— 20+ ์ˆ˜์ค€์˜ ํ•™์ƒ์—๊ฒŒ ๋” ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ค€๋น„๊ฐ€ ๋˜์—ˆ์œผ๋ฉด ์—ฌ๊ธฐ์—์„œ ๋‹จ๊ณ„๋ณ„ ์ง€์นจ์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค .

๋‹ค์ค‘ ํŽ˜์ด์ง€ ๋ฐ˜์‘ํ˜• ์›น์‚ฌ์ดํŠธ

๋ฐ˜์‘ํ˜•, ๋‹ค์ค‘ ํŽ˜์ด์ง€ ๋ฐ ๋‹ค์ค‘ ์žฅ์น˜ ์›น ์‚ฌ์ดํŠธ๋Š” ๋ฐ์Šคํฌํ†ฑ ๋ฐ ๋ชจ๋ฐ”์ผ ๋ธŒ๋ผ์šฐ์ € ๋ชจ๋‘์—์„œ ๋‹ค์–‘ํ•œ ๊ฐ€์ ฏ ๋ฐ ๋‹ค์–‘ํ•œ ํ™”๋ฉด ํฌ๊ธฐ์—์„œ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ๋Š” ์›น ์‚ฌ์ดํŠธ์ž…๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ์žฅ์น˜(๋…ธํŠธ๋ถ, ํƒœ๋ธ”๋ฆฟ, ์Šค๋งˆํŠธํฐ)์˜ ๋Š์ž„์—†๋Š” ์ŠคํŠธ๋ฆผ์ด ๋น„๋ช…์„ ์ง€๋ฅด๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ˜์‘ํ˜• ์›น ์‚ฌ์ดํŠธ๋Š” ์ด์ œ ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ฒฝ์Ÿ์‚ฌ๋ณด๋‹ค ์•ž์„œ ๋‚˜๊ฐ€๊ณ  ์‹ถ๋‹ค๋ฉด ๋‹จ์ˆœํ•œ ์›น์‚ฌ์ดํŠธ๊ฐ€ ์•„๋‹Œ ํ™œ๊ธฐ์ฐฌ ๋ฐ˜์‘ํ˜• ์›น์‚ฌ์ดํŠธ๋กœ ์ด๋™ํ•˜์‹ญ์‹œ์˜ค. ๋˜ํ•œ ๋ช…ํ™•ํ•œ ์ง€์นจ์„ ๋”ฐ๋ฅด๋ฉด ํ”„๋กœ์ ํŠธ๊ฐ€ ๊นŒ๋‹ค๋กœ์›Œ ๋ณด์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋” ์‰ฌ์šด ๊ฒƒ์ด ํ•„์š”ํ•˜์‹ญ๋‹ˆ๊นŒ? ๊ทธ๋Ÿฐ ๋‹ค์Œ ํŠน์ • ์š”๊ตฌ ์‚ฌํ•ญ์— ๋”ฐ๋ผ ๊ธฐ์กด ์›น ์‚ฌ์ดํŠธ ํ…œํ”Œ๋ฆฟ์„ ๋‹ค์‹œ ๋””์ž์ธํ•˜์‹ญ์‹œ์˜ค. ์ด์ œ ๋ง‰ ์‹œ์ž‘ํ•˜๋Š” ๋™๋ฃŒ ํ•™์Šต์ž์˜ ๊ฒฝ์šฐ ๋ฏธ๋ฆฌ ์ •์˜๋œ ๋””์ž์ธ ์š”์†Œ๊ฐ€ ์žˆ๋Š” ๊ธฐ์กด ์›น์‚ฌ์ดํŠธ ํ…œํ”Œ๋ฆฟ์„ ์‚ฌ์šฉํ•ด๋„ ๋ฉ๋‹ˆ๋‹ค.

ํ•ญ๊ณต์‚ฌ ์˜ˆ์•ฝ ์‹œ์Šคํ…œ

์—ฌํ–‰์˜ ํ˜„๋Œ€ ์‹œ๋Œ€์— ํ•ญ๊ณต๊ถŒ ์„œ๋น„์Šค์— ๋Œ€ํ•œ ์ˆ˜์š”๊ฐ€ ๋งค์šฐ ๋†’์Šต๋‹ˆ๋‹ค. Videcom, AirCore, Aviasales ๋“ฑ๊ณผ ๊ฐ™์€ ๋งŽ์€ ์›น์‚ฌ์ดํŠธ์™€ ์•ฑ์„ ๋ณผ ์ˆ˜ ์žˆ์œผ๋ฉฐ ์‚ฌ์šฉ์ž๊ฐ€ ์ „ ์„ธ๊ณ„ ์–ด๋””์—์„œ๋‚˜ ๋น ๋ฅด๊ฒŒ ํ‹ฐ์ผ“์„ ์˜ˆ์•ฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ง์ ‘ ๋งŒ๋“ค๋ฉด ์–ด๋–จ๊นŒ์š”? ํ•ญ๊ณต ์˜ˆ์•ฝ ์‹œ์Šคํ…œ์€ ํ•ญ๊ณต์‚ฌ ์‹œ์Šคํ…œ ๊ธฐ๋Šฅ์˜ ์žฌ๊ณ , ์ „์ž ํ•ญ๊ณต๊ถŒ ์šด์˜(์˜ˆ์•ฝ ๋ฐ ์ทจ์†Œ), ๊ฑฐ๋ž˜ ๊ด€๋ฆฌ ๋ฐ ์ž๋™ํ™”๋ฅผ ํฌํ•จํ•˜๋Š” ์ข…ํ•ฉ ์ฒ˜๋ฆฌ ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค. ์ด๋ ฅ์„œ์— ์ถ”๊ฐ€ํ•  ๋ฉ‹์ง„ Java ํ”„๋กœ์ ํŠธ๋ฅผ ์ฐพ๊ณ  ์žˆ๋‹ค๋ฉด ์ž์‹ ๋งŒ์˜ ํ•ญ๊ณต์‚ฌ ์˜ˆ์•ฝ ์‹œ์Šคํ…œ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์ž˜๋ชป๋  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค .

์˜จ๋ผ์ธ ์Šคํ† ์–ด

์ด์ œ ์‚ฌ์—…์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•ด ๋ด…์‹œ๋‹ค. ์ „์ž ์ƒ๊ฑฐ๋ž˜ ์ƒ์ ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ๋„ ์žฅ๊ธฐ์ ์œผ๋กœ ๋ˆ์„ ๋ฒŒ ์ˆ˜ ์žˆ๋Š” ์ฝ”๋”ฉ ๊ธฐ์ˆ ์„ ์—ฐ์Šตํ•˜๋Š” ์ข‹์€ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๋ฌผ๋ก  ์˜จ๋ผ์ธ ์ƒ์ ์ด๋‚˜ ์ „์ž ์ƒ๊ฑฐ๋ž˜ ์•ฑ์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์š”์†Œ๋Š” ์†Œ์…œ ๋„คํŠธ์›Œํ‚น ์‚ฌ์ดํŠธ๋ณด๋‹ค ์กฐ๊ธˆ ๋” ๋ณต์žกํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๋ฏธ ๋„์ „์ ์ธ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์˜์ง€๊ฐ€ ์žˆ๋Š” ์ค‘๊ธ‰ ํ•™์ƒ์ด๋ผ๋ฉด ์™œ ์•ˆ ๋ฉ๋‹ˆ๊นŒ? ์ด ๊ธฐ์‚ฌ ์—์„œ๋Š” ์ฒ˜์Œ๋ถ€ํ„ฐ ์ „์ž ์ƒ๊ฑฐ๋ž˜ ์•ฑ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์œ ์ผํ•œ ์š”๊ตฌ ์‚ฌํ•ญ์€ Core Java์— ๋Œ€ํ•œ ์ง€์‹์ž…๋‹ˆ๋‹ค.

์ž‘์€ 2D ๊ฒŒ์ž„

๋น„์ฆˆ๋‹ˆ์Šค๊ฐ€ ๊ท€ํ•˜์˜ ๋น„์ฆˆ๋‹ˆ์Šค๊ฐ€ ์•„๋‹Œ ๊ฒƒ์ฒ˜๋Ÿผ ๋“ค๋ฆฌ๋ฉด(๋ง์žฅ๋‚œ์ด ์•„๋‹˜) ๋„ˆ๋ฌด ์‹ฌ๊ฐํ•œ ๋ชจ๋“  ๊ฒƒ์—์„œ ๋ฒ—์–ด๋‚˜ ์—”ํ„ฐํ…Œ์ธ๋จผํŠธ ์˜์—ญ์œผ๋กœ ๋“ค์–ด๊ฐ€์‹ญ์‹œ์˜ค. ๊ณ„๋žต! ์ด๊ฒƒ์€ ์•„๋งˆ๋„ ์ด ๋ชฉ๋ก์—์„œ ๊ฐ€์žฅ ํฅ๋ฏธ๋กœ์šด ์œ ํ˜•์˜ ํ”„๋กœ์ ํŠธ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ž‘์€ ๊ฒŒ์ž„์ด๋ผ๋„ ๋””์ž์ธํ•˜๋Š” ๊ฒƒ์€ ๊ธฐ์ˆ  ์„ธํŠธ๋ฅผ ํ…Œ์ŠคํŠธํ•˜๊ณ  ๊ทธ๊ฒƒ์œผ๋กœ ๋ฌด์—‡์„ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ๋Š” ํ›Œ๋ฅญํ•œ ๋ฐฉ๋ฒ•์ด๋ฉฐ, ๊ฒฐ๊ตญ ํฌํŠธํด๋ฆฌ์˜ค์—์„œ ๋ฉ‹์ง„ ๊ฒŒ์ž„์„ ์„ ๋ณด์ผ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์€ ๋งํ•  ๊ฒƒ๋„ ์—†์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๊ฒŒ์ž„์„ ๋งŒ๋“ค ๋•Œ ๊ทธ ๊ณผ์ •์—์„œ ์—„์ฒญ๋‚œ ์–‘์˜ ์ƒˆ๋กœ์šด ์ •๋ณด๋ฅผ ํก์ˆ˜ํ•˜๊ฒŒ ๋˜๋ฉฐ, ์ด๋Š” ๊ฒฐ๊ตญ ๋„์ „์„ ํ†ตํ•ด ์ž‘์—…ํ•˜๋ฉด์„œ ๋” ๋‚˜์€ ์ฝ”๋”๊ฐ€ ๋˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์งˆ๋ฌธ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด๋–ค ๊ฒŒ์ž„๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์•ผ ํ• ๊นŒ์š”?
  • ์ฒด์Šค. ํด๋ž˜์‹ ๋ณด๋“œ ๊ฒŒ์ž„์„ Java DIY ํ”„๋กœ์ ํŠธ๋กœ ๋ณ€ํ™˜ํ•œ ๋‹ค์Œ ์นœ๊ตฌ ๋ฐ ์•„๋งˆ๋„ ๋ฏธ๋ž˜์˜ ๋™๋ฃŒ์™€ ํ•จ๊ป˜ ํ”Œ๋ ˆ์ดํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด Chess๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด์‹ญ์‹œ์˜ค. ์ฒด์Šค ๊ฒŒ์ž„์„ ์ž‘์„ฑํ•˜๋ ค๋ฉด ๋ช‡ ๊ฐ€์ง€ ๋ณต์žกํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ๊ณ„์‚ฐ์„ ์ƒ์„ฑํ•ด์•ผ ํ•˜์ง€๋งŒ ๊ฒฐ๊ณผ๋Š” ๊ทธ๋งŒํ•œ ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ํ…ŒํŠธ๋ฆฌ์Šค. ์ด๊ฒƒ์€ ์ง€๊ธˆ๊นŒ์ง€ ๋งŒ๋“ค์–ด์ง„ ๋˜ ๋‹ค๋ฅธ ์ดˆ์ธ๊ธฐ ์ปดํ“จํ„ฐ ๊ฒŒ์ž„์ž…๋‹ˆ๋‹ค. ์ฒด์Šค์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ Tetris๋Š” ๋ณ€ํ˜•, ์ธ๊ณต ์ง€๋Šฅ ๋ฐ ์ž…๋ ฅ/์ถœ๋ ฅ์„ ์กฐ์ž‘ํ•˜๋Š” ํ™˜์ƒ์ ์ธ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

ํฐ ๋ฒ„๊ทธ ์—†๋Š” ๋น„๋””์˜ค ๊ฒŒ์ž„

๋” ๋งŽ์€ ๋„์ „์„ ์›ํ•˜์‹ญ๋‹ˆ๊นŒ? Mine Picker, Hungry Snake, Pacman, Racer ๋˜๋Š” 2048๊ณผ ๊ฐ™์€ ๋ช‡ ๊ฐ€์ง€ ๊ณ ์ „์ ์ธ ๋น„๋””์˜ค ๊ฒŒ์ž„์„ ๋งŒ๋“ค์–ด ๋ณด์‹ญ์‹œ์˜ค. ๋‹คํ–‰์Šค๋Ÿฝ๊ฒŒ๋„ CodeGym ๊ฒŒ์ž„ ์„น์…˜์€ ์ž์‹ ๋งŒ์˜ ๊ฒŒ์ž„์„ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋Š” ๋งค์šฐ ๊ฐ„๋‹จํ•˜๋ฉด์„œ๋„ ๋งค๋ ฅ์ ์ธ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. CodeGym์œผ๋กœ ๊ฒŒ์ž„์„ ๊ตฌ์ถ•ํ•˜๋ ค๋ฉด ๋‹จ์ผ ๊ฒŒ์ž„ ์ž‘์—…์„ ๊ตฌ์„ฑํ•˜๋Š” ์ผ๋ จ์˜ ํ•˜์œ„ ์ž‘์—…์„ ์™„๋ฃŒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰ ํ•˜์œ„ ์ž‘์—…์„ ์™„๋ฃŒํ•˜๋ฉด ๊ฒŒ์ž„์ด ์ค€๋น„๋ฉ๋‹ˆ๋‹ค. ๋งค์šฐ ์ง๊ด€์ ์ธ ๊ฒŒ์ž„ ์—”์ง„๊ณผ ๋‹จ๊ณ„๋ณ„ ์ง€์นจ ๋•๋ถ„์— ๋ฒˆ๊ฑฐ๋กœ์›€ ์—†์ด ๋ชจ๋“  ๊ฒŒ์ž„์„ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‘๋ ค์›€์„ ์ œ์ณ๋‘๊ณ  ๋„์ „ํ•˜์‹ญ์‹œ์˜ค! ์„ฑ๊ณต์ด ๋ณด์žฅ๋ฉ๋‹ˆ๋‹ค.

๊ฒฐ๋ก 

์—ฐ์Šต ์—†์ด๋Š” ๋ˆ„๊ตฌ๋„ ์ข‹์€ ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ๋  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์‹ค์ œ Java ํ”„๋กœ์ ํŠธ๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๊ฒƒ์€ ๊ธฐ์ˆ ์„ ์—ฐ๋งˆํ•˜๊ณ  ํ”„๋กœ๊ทธ๋ž˜๋จธ๋กœ์„œ์˜ ์ž์‹ ๊ฐ์„ ๋†’์ด๋Š” ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ ๋ฐฐ์šด ์ด๋ก ์„ ์‹ค์ œ๋กœ ์ดํ•ดํ–ˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ฝ”๋”ฉ ๊ฒฝ๋กœ๋ฅผ ์‹œ์ž‘ํ•  ๋•Œ ๊ฐ„๋‹จํ•˜๋ฉด์„œ๋„ ๋งค๋ ฅ์ ์ธ ํ”„๋กœ์ ํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๋‚˜์—ด๋œ ํ”„๋กœ์ ํŠธ ์ค‘ ํ•˜๋‚˜๋ฅผ ์‹œ์ž‘๋ถ€ํ„ฐ ์™„๋ฃŒ๊นŒ์ง€ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒฝํ—˜์„ ์Œ“๋Š” ์ฆ‰์‹œ ์ „์ฒด ํ”„๋กœ์„ธ์Šค๋ฅผ ๋‚ด๋ถ€์—์„œ ์ดํ•ดํ•˜์—ฌ ํ–ฅํ›„ ๊ฒฝ๋ ฅ ์ „๋ฐ˜์— ๊ฑธ์ณ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์š”์ปจ๋Œ€ Java ํ”„๋กœ์ ํŠธ ์ž‘์—…์€ ์ธํ„ฐ๋ทฐ๋ฅผ ์ค€๋น„ํ•˜๊ณ  ์ข‹์€ ์ง์žฅ์„ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๊ณ ์šฉ์ฃผ๋Š” ๊ท€ํ•˜์˜ ์ด๋ก ์  ์ง€์‹์— ๊ด€์‹ฌ์ด ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ์‹ค์ œ ์„ค์ •์—์„œ ์–ด๋–ป๊ฒŒ ๋ฒˆ์—ญํ•  ์ˆ˜ ์žˆ๋Š”์ง€์— ๊ด€์‹ฌ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ, ์ž์‹ ์˜ ํ”„๋กœ์ ํŠธ ํฌํŠธํด๋ฆฌ์˜ค๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๊ฒƒ์€ ํ•ญ์ƒ ํ›Œ๋ฅญํ•œ ์•„์ด๋””์–ด์ž…๋‹ˆ๋‹ค. ํ–‰์šด์„ ๋นŒ์–ด์š”!
์ฝ”๋ฉ˜ํŠธ
  • ์ธ๊ธฐ
  • ์‹ ๊ทœ
  • ์ด์ „
์ฝ”๋ฉ˜ํŠธ๋ฅผ ๋‚จ๊ธฐ๋ ค๋ฉด ๋กœ๊ทธ์ธ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค
์ด ํŽ˜์ด์ง€์—๋Š” ์•„์ง ์ฝ”๋ฉ˜ํŠธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค