JavaRush /Java Blog /Random-KO /๋ถ๋งˆํฌ: Java ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ๋„๊ตฌ(Maven, Docker, GitHub ๋“ฑ)์— ๋Œ€ํ•œ ๊ธฐ์‚ฌ ๋ชจ์Œ

๋ถ๋งˆํฌ: Java ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ๋„๊ตฌ(Maven, Docker, GitHub ๋“ฑ)์— ๋Œ€ํ•œ ๊ธฐ์‚ฌ ๋ชจ์Œ

Random-KO ๊ทธ๋ฃน์— ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค
JavaRush ํ•™์ƒ๋“ค์˜ ํŽธ์˜๋ฅผ ์œ„ํ•ด ์šฐ๋ฆฌ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ์ฃผ์ œ์— ๊ด€ํ•œ ๊ฐ•์˜์™€ ๊ธฐ์‚ฌ๋ฅผ ์ˆ˜์ง‘ํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ์—ด ๋ฒˆ์งธ ์„ ํƒ ํ•ญ๋ชฉ์€ Maven, Docker, GitHub, Intellij IDEA ๋“ฑ ๋ชจ๋“  Java ๊ฐœ๋ฐœ์ž์—๊ฒŒ ํ•„์š”ํ•œ ๋„๊ตฌ์— ๊ด€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฏธ๋‹ˆ ๊ฐ€์ด๋“œ์—์„œ๋Š” ๊ธฐ์‚ฌ์˜ ๋ณธ์งˆ์„ ๊ฐ„๋žตํ•˜๊ฒŒ ์„ค๋ช…ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ๋งํฌ๋ฅผ ๋”ฐ๋ผ๊ฐ€๋ฉด ๊ด€์‹ฌ ์žˆ๋Š” ์ฃผ์ œ์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ถ๋งˆํฌ์— ์ปฌ๋ ‰์…˜์„ ์ถ”๊ฐ€ํ•˜๊ณ  ํ•„์š”ํ•  ๋•Œ ๋‹ค์‹œ ๋ฐฉ๋ฌธํ•˜์„ธ์š”. ๋ถ๋งˆํฌ: Java ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ๋„๊ตฌ์— ๋Œ€ํ•œ ๊ธฐ์‚ฌ ๋ชจ์Œ - Maven, Docker, GitHub ๋ฐ ๊ธฐํƒ€ - 1

๊ธฐ์‚ฌ ๋ฐ ๊ฐ•์˜

์ž๋ฐ”. ํ–‰๋™ ๊ณ„ํš

๋ชจ๋“  Java ์ดˆ๋ณด์ž๋ฅผ ์œ„ํ•œ ํ•„์ˆ˜ ์ฑ…์€ ๋‹จ์ˆœํ•œ ์ด๋ก ์ด ์•„๋‹ˆ๋ผ ๋งˆ์Šคํ„ฐํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ๋Š” ๋„๊ตฌ์™€ ๊ธฐ์ˆ ์— ๊ด€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฐฉ๊ธˆ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ์ฒซ ๋‹จ๊ณ„๋ฅผ ์‹œ์ž‘ํ–ˆ๋‹ค๋ฉด ์ด ์ฑ…์„ ์ฝ์–ด ๋ณด์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. ํ™•์‹คํžˆ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

IntelliJ IDEA์—์„œ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ

IntelliJ IDEA ๋ฐ ์œ ์‚ฌํ•œ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์€ ์ดˆ๋ณด ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ๋งˆ์Šคํ„ฐํ•ด์•ผ ํ•˜๋Š” ์ฒซ ๋ฒˆ์งธ ๋„๊ตฌ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ์ด ์ž๋ฃŒ์—์„œ ์ €์ž๋Š” ์†Œํ”„ํŠธ์›จ์–ด ์„ค์น˜ ๋ฐ ๊ตฌ์„ฑ์€ ๋ฌผ๋ก  IntelliJ IDEA์—์„œ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์ ˆ์ฐจ๋„ ์‚ดํŽด๋ด…๋‹ˆ๋‹ค.

IntelliJ Idea Enterprise์—์„œ ๊ฐ„๋‹จํ•œ ์›น ํ”„๋กœ์ ํŠธ ๋งŒ๋“ค๊ธฐ. ์‚ฌ์ง„๊ณผ ํ•จ๊ป˜ ์ฐจ๊ทผ์ฐจ๊ทผ

IntelliJ IDEA Enterprise Edition(IDE์˜ ์œ ๋ฃŒ ๊ณ ๊ธ‰ ๋ฒ„์ „)์—์„œ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๋‹จ๊ณ„๋ณ„ ๊ฐ€์ด๋“œ์ž…๋‹ˆ๋‹ค. ์ด ๊ธฐ์‚ฌ์—๋Š” ์œ ์šฉํ•œ ์˜ˆ์ œ์™€ ์Šคํฌ๋ฆฐ์ƒท์ด ๋งŽ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

Eclipse Java ๊ฒ€ํ† : ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ

IT ์„ธ๊ณ„์—๋Š” ๋…์  ์†Œํ”„ํŠธ์›จ์–ด์™€ ์˜คํ”ˆ ์†Œ์Šค๋ผ๋Š” ๋‘ ๊ฐ€์ง€ ์ง„์˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ƒ์šฉ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์ค‘์—์„œ IDEA(์˜คํ”ˆ ์†Œ์Šค ์•ผ๋ง ํฌํ•จ)๊ฐ€ ์‹ค์งˆ์ ์œผ๋กœ ํ™•์‹คํ•œ ์„ ๋‘์ฃผ์ž๋ผ๋ฉด, ์˜คํ”ˆ ์†Œ์Šค IDE๋Š” ์œ ์ผํ•˜๊ฒŒ ์„ ํ˜ธ๋˜๋Š” Eclipse๋กœ ๋Œ€ํ‘œ๋ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์„ ์Šค์Šค๋กœ ๋งž์ถคํ™”ํ•˜๋ ค๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ์„ ํƒํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. ์ด ํ…์ŠคํŠธ์—์„œ๋Š” ์ด IDE๊ฐ€ ๋ฌด์—‡์ธ์ง€, ์žฅ์ ๊ณผ ๋‹จ์ ์ด ๋ฌด์—‡์ธ์ง€ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

IntelliJ IDEA: ์ฝ”๋“œ ์Šคํƒ€์ผ ๋ฐ ํ˜•์‹ ์ง€์ •

์ตœ์‹  ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋” ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค. ํŠนํžˆ, "์Šน์ธ๋˜์ง€ ์•Š์€" ํ˜•์‹์„ ์ตœ์†Œํ™”ํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•˜๋ฉด์„œ ์ฝ”๋“œ ์Šคํƒ€์ผ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ๊ฒƒ์ด ๋” ์‰ฝ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ๋ฆฌ๋ทฐ์—์„œ ์ €์ž๋Š” ์ฝ”๋“œ๋ฅผ ์ฝ๊ธฐ ์‰ฝ๊ณ  ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด IntelliJ Idea IDE๊ฐ€ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์ œ๊ณตํ•˜๋Š” ๋„๊ตฌ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

IntelliJ IDEA๋ฅผ ์œ„ํ•œ 10๊ฐ€์ง€ ์œ ์šฉํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ: ์ดˆ๋ณด์ž์™€ ์ˆ™๋ จ๋œ ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ๊ฒƒ

์•„๋งˆ๋„ ๋ชจ๋“  ์‚ฌ๋žŒ์ด IntelliJ IDEA ํ™˜๊ฒฝ์˜ ๊ธฐ๋Šฅ์ด ๋ถ€์กฑํ•˜๊ฑฐ๋‚˜ ์ด๋ฅผ ๊ฐœ์ธ ์š”๊ตฌ์— ๋งž๊ฒŒ ์กฐ์ •ํ•˜๊ณ  ์‹ถ์–ดํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ํ˜„์‹ค์ž…๋‹ˆ๋‹ค. ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์ถ”๊ฐ€ํ•˜์—ฌ ๊ธฐ๋Šฅ์„ ํ™•์žฅํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ด ํ…์ŠคํŠธ์—๋Š” Intellij IDEA์™€ ํ•จ๊ป˜ ์ž‘๋™ํ•˜๋Š” 10๊ฐ€์ง€ ํฅ๋ฏธ๋กœ์šด ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ๋‚˜์—ด๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” 10๊ฐ€์ง€ Java ๊ฐœ๋ฐœ ํ™˜๊ฒฝ

์˜ค๋Š˜๋‚  Eclipse, IntelliJ IDEA ๋ฐ NetBeans๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ๊ฐ€์žฅ ์„ ํ˜ธํ•˜๋Š” Java IDE๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ ์™ธ์—๋„ ๋‹ค๋ฅธ ์†”๋ฃจ์…˜์— ์ฃผ๋ชฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณธ๋ฌธ์˜ ๋‚ด์šฉ์€ ์ด๊ฒƒ์ด๋‹ค.

Java ๊ฐœ๋ฐœ์ž๊ฐ€ ์•Œ์•„์•ผ ํ•  6๊ฐ€์ง€ ์œ ์šฉํ•œ ๋ช…๋ น์ค„ ๋„๊ตฌ

Java Runtime Environment๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋‹ค์–‘ํ•œ ํ”Œ๋žซํผ์—์„œ Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ช…๋ น์ค„์„ ํฌํ•จํ•˜์—ฌ ์‹คํ–‰ ๋ฐ ์ปดํŒŒ์ผ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋Š” ๋ช…๋ น์ค„ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ƒ์„ฑ ๋ฐ ๊ธฐํƒ€ ์—ฌ๋Ÿฌ ์ž‘์—… ์ˆ˜ํ–‰ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋‹จ์ˆœํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํ…์ŠคํŠธ์—์„œ๋Š” Java ๊ฐœ๋ฐœ์ž๊ฐ€ ์•Œ์•„์•ผ ํ•  ์—ฌ์„ฏ ๊ฐ€์ง€ ์œ ์šฉํ•œ ๋ช…๋ น์ค„ ๋„๊ตฌ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

Java ์ฝ”๋“œ์˜ ํ’ˆ์งˆ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๋„๊ตฌ

ํ”ผํ•  ์ˆ˜ ์žˆ๋Š” ์˜ค๋ฅ˜๋กœ๋ถ€ํ„ฐ ์ฝ”๋“œ๋ฅผ ๋ณดํ˜ธํ•˜๋Š” ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์€ ์ •์  ์ฝ”๋“œ ๋ถ„์„ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๊ธฐ์‚ฌ์—์„œ๋Š” ๊ทธ๋Ÿฌํ•œ ๋ถ„์„์„ ์œ„ํ•œ 8๊ฐ€์ง€ ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ฝ๊ณ  ๋งˆ์Œ์— ๋“œ๋Š” ๊ฒƒ์„ ์„ ํƒํ•˜์„ธ์š”.

41 JVM ๋ฐ Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ฑ๋Šฅ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ๋„๊ตฌ

๋‹ค์Œ์€ JVM ๋ชจ๋‹ˆํ„ฐ๋ง ๋„๊ตฌ ๋ฐ ๊ด€๋ จ ์ œํ’ˆ์˜ ์ „์ฒด ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค. ๋„๊ตฌ๋Š” ์•ŒํŒŒ๋ฒณ ์ˆœ์„œ๋กœ ๋‚˜์—ด๋˜๋ฉฐ ๋ชฉ๋ก ๋ฐฐ์น˜์— ๋”ฐ๋ฅธ ๊ธฐ๋ณธ ์„ค์ •์€ ์—†์Šต๋‹ˆ๋‹ค.

๋ฉ”์ด๋ธ ๊ธฐ์ดˆ

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

"Java ํ”„๋กœ์ ํŠธ A๋ถ€ํ„ฐ Z๊นŒ์ง€": Maven์— ๋Œ€ํ•ด ์•Œ๊ณ  ์‹ถ์—ˆ๋˜ ๋ชจ๋“  ๊ฒƒ

Maven์€ Gradle, Ant์™€ ํ•จ๊ป˜ ํ”„๋กœ์ ํŠธ ๋นŒ๋“œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ์— ๊ด€ํ•œ ์ผ๋ จ์˜ ์ถœํŒ๋ฌผ์—์„œ ์ €์ž๋Š” ๋‹ค์–‘ํ•œ ๋„๊ตฌ ์‚ฌ์šฉ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•ฉ๋‹ˆ๋‹ค. ์ œ๋ชฉ์—์„œ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด ์ด ์„น์…˜์€ Maven์— ๊ด€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

"Java ํ”„๋กœ์ ํŠธ A๋ถ€ํ„ฐ Z๊นŒ์ง€": Maven์— ๋Œ€ํ•ด ์•Œ๊ณ  ์‹ถ์—ˆ๋˜ ๋ชจ๋“  ๊ฒƒ. 2 ๋ถ€

์ฒซ ๋ฒˆ์งธ ์„น์…˜์— ์„ค๋ช…๋œ ์ด๋ก ์ด ์‹ค์ œ๋กœ ํ‘œ์‹œ๋˜๋Š” ์ด์ „ ๊ธฐ์‚ฌ์˜ ๊ณ„์†์ž…๋‹ˆ๋‹ค.

Maven ๋ฐ GitHub Actions๋กœ Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํŒจํ‚ค์ง•

์ด ๋ฌธ์„œ์—์„œ๋Š” Maven์„ ์‚ฌ์šฉํ•˜์—ฌ Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํŒจํ‚ค์ง•ํ•˜๋Š” ์›Œํฌํ”Œ๋กœ๋ฅผ ๋งŒ๋“  ๋‹ค์Œ ์ด๋ฅผ ์•„ํ‹ฐํŒฉํŠธ๋กœ ์ €์žฅํ•˜๊ฑฐ๋‚˜ GitHub ํŒจํ‚ค์ง€์— ๊ฒŒ์‹œํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

GitHub ๊ฒฝํ—˜์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” 5๊ฐ€์ง€ ๋„๊ตฌ

GitHub๋Š” ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ํŒ€ ๊ฐœ๋ฐœ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ๋œ ์ˆ˜๋งŽ์€ ๊ณต๊ฐœ ์ €์žฅ์†Œ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. GitHub๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฝ”๋“œ๋ฅผ ์ €์žฅํ•˜๊ณ  ํŒ€์› ๋ฐ ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž์™€ ๊ณต๋™ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. GitHub๋ฅผ ์ง์ ‘ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๊ณ  ์‚ฌ์šฉ์ž ์ •์˜ํ•˜์—ฌ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์„œ์—๋Š” ์ด์— ๋„์›€์ด ๋  ์ˆ˜ ์žˆ๋Š” ๋„๊ตฌ ๋ชฉ๋ก์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

Eclipse, NetBeans ๋˜๋Š” IntelliJ IDEA? Java ๊ฐœ๋ฐœ์„ ์œ„ํ•œ IDE ์„ ํƒ

๋Œ€๋ถ€๋ถ„์˜ ์‚ฐ์—…์šฉ ํ”„๋กœ๊ทธ๋ž˜๋จธ๋Š” Eclipse, NetBeans ๋˜๋Š” IntelliJ IDEA๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ ์ด๋Ÿฌํ•œ IDE ๊ฐ๊ฐ์—๋Š” ๊ณ ์œ ํ•œ ์žฅ์ ๊ณผ ๋‹จ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ์‚ฌ๋ฅผ ์ฝ๊ณ  ๋‚˜๋ฉด ์–ด๋Š ๊ฒƒ์ด ๊ท€ํ•˜์—๊ฒŒ ์ ํ•ฉํ•œ์ง€ ์ดํ•ดํ•˜๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์˜จ๋ผ์ธ ๊ฐœ๋ฐœ์ž ๋„๊ตฌ

ํ˜„๋Œ€ ์‚ฌํšŒ์—์„œ๋Š” ๋งŽ์€ ์„œ๋น„์Šค๊ฐ€ "์›น"์— ์กด์žฌํ•˜๋ฉฐ ์‹ฌ์ง€์–ด "๊ตฌ์‹" ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๋„ ์ฒœ์ฒœํžˆ ์›น์œผ๋กœ ์ด๋™ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ปฌ๋ ‰์…˜์—๋Š” ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์œ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์˜จ๋ผ์ธ ๋„๊ตฌ๊ฐ€ ๋‚˜์—ด๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. IDE๋ฅผ ๋กœ์ปฌ๋กœ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ณ ๋„ ์‹ ์†ํ•˜๊ฒŒ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ด๋Š” ๋•Œ๋•Œ๋กœ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฝ”๋“œ ํ’ˆ์งˆ๊ณผ ์ƒ์‚ฐ์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” 12๊ฐ€์ง€ ๋ฌด๋ฃŒ ๋„๊ตฌ

๋ชจ๋“  ํ”„๋กœ์ ํŠธ ํŒ€์€ ๊ฐ€๋Šฅํ•œ ํ•œ ๋นจ๋ฆฌ ์ œํ’ˆ์„ ์‹ ์†ํ•˜๊ฒŒ ๊ฐœ๋ฐœํ•˜๊ณ  ์‹œ์žฅ์— ์ถœ์‹œํ•˜๋Š” ๋ฐ ๊ด€์‹ฌ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์˜คํ”ˆ ์†Œ์Šค ๋„๊ตฌ๋Š” ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ •์  ์ฝ”๋“œ ๋ถ„์„์„ ์ˆ˜ํ–‰ํ•˜๊ณ , ๊ตฌ์„ฑ์„ ๊ด€๋ฆฌํ•˜๊ณ , ๋นŒ๋“œํ•˜๊ณ  ์ง€์†์ ์ธ ํ†ตํ•ฉ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ์ด ํ…์ŠคํŠธ์—๋Š” ์ฝ”๋“œ ํ’ˆ์งˆ์„ ํ–ฅ์ƒํ•˜๊ณ  ์ƒ์‚ฐ์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ๋Š” ๋ช‡ ๊ฐ€์ง€ ์œ ์šฉํ•œ ์˜คํ”ˆ ์†Œ์Šค ๋„๊ตฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

GitHub ํ”„๋กœํ•„์„ ์ƒ์„ฑํ•  ๋•Œ ํ”ผํ•ด์•ผ ํ•  ์‹ค์ˆ˜

GitHub์—์„œ ํ”„๋กœํ•„์„ ๋งŒ๋“ค ๋•Œ ์ดˆ๋ณด์ž๋Š” ์‰ฝ๊ฒŒ ํ”ผํ•  ์ˆ˜ ์žˆ๋Š” ์‹ค์ˆ˜๋ฅผ ์ €์ง€๋ฅด๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. GitHub ํ”„๋กœํ•„์ด ๊ณ ์šฉ์ฃผ์—๊ฒŒ ์ข‹์€ ์ธ์ƒ์„ ์ฃผ๊ธฐ๋ฅผ ์›ํ•œ๋‹ค๋ฉด ๊ณ ๋ คํ•ด์•ผ ํ•  ๋ช‡ ๊ฐ€์ง€ ์ค‘์š”ํ•œ ์„ธ๋ถ€ ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ฝ๊ณ  ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค.

GitHub์—์„œ ํ”„๋กœ์ ํŠธ ์ž‘์—… ์ตœ์ ํ™”: Github ํ…œํ”Œ๋ฆฟ ์ €์žฅ์†Œ์— ์ต์ˆ™ํ•ด์ง€๊ธฐ

Github ํ…œํ”Œ๋ฆฟ ์ €์žฅ์†Œ๊ฐ€ ๋ฌด์—‡์ธ์ง€, ์–ด๋–ป๊ฒŒ ์ž‘์—…ํ•˜๋Š”์ง€์— ๋Œ€ํ•œ ํฐ ํ…์ŠคํŠธ์ž…๋‹ˆ๋‹ค.

GitHub์—์„œ ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•

์ „ ์„ธ๊ณ„์˜ ๊ฐœ๋ฐœ์ž๋“ค์€ GitHub๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ์ ํŠธ๋ฅผ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ์‚ฌ์—์„œ ์ €์ž๋Š” ํ›Œ๋ฅญํ•œ ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ๋ช‡ ๊ฐ€์ง€ ํŒ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด ํŒ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด์ปคํ†ค ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

๋„์ปค์™€ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

์ด์ œ ๊ฐ€์ƒํ™”์™€ ์ปจํ…Œ์ด๋„ˆํ™” ์—†์ด ํ•˜๋‚˜์˜ ๋Œ€๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์ƒํ•˜๋Š” ๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ธฐ์‚ฌ์—์„œ ์ €์ž๋Š” Kubernetes, Docker ๋ฐ Docker Swarm ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์˜์—ญ๊ณผ ๊ธฐ๋Šฅ์„ ๋น„๊ตํ•ฉ๋‹ˆ๋‹ค.

Docker์™€์˜ ์ฒซ ๋งŒ๋‚จ

์ปจํ…Œ์ด๋„ˆํ™”๋Š” ์‹ค์ œ๋กœ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ๋ฉ”์ปค๋‹ˆ์ฆ˜์ž…๋‹ˆ๋‹ค. ์ด ์งง์€ ๊ฐœ์š”๋Š” Docker ๋„๊ตฌ์— ๋Œ€ํ•œ ์ฒซ ๋ฒˆ์งธ ์•„์ด๋””์–ด๋ฅผ ํ˜•์„ฑํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

SpotBugs ์†Œ๊ฐœ: ์ •์  ์ฝ”๋“œ ๋ถ„์„ ๋„๊ตฌ

์ฝ”๋“œ ๊ฒ€ํ† ๋Š” ๊ฐœ๋ฐœ์˜ ํ•„์ˆ˜ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. ์ด ์ž‘์—…์„ ๋” ์‰ฝ๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด ์ •์  ์ฝ”๋“œ ๋ถ„์„์— ๋‹ค์–‘ํ•œ ๋„๊ตฌ๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ด ๋ฆฌ๋ทฐ์—์„œ ๋…ผ์˜๋˜๋Š” SpotBugs ํ†ต๊ณ„ ๋ถ„์„๊ธฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋น„๋””์˜ค

IntelliJ IDEA๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋น ๋ฅด๊ณ  ์‰ฝ๊ฒŒ ์ฝ”๋“œ ์ž‘์„ฑ

IntelliJ IDEA์—์„œ ์ฝ”๋“œ๋ฅผ ๋น ๋ฅด๊ฒŒ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? Naumen์˜ Java ๊ฐœ๋ฐœ์ž์ธ Artem Zaitsev๋Š” ์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ๊ถŒ์žฅ ์‚ฌํ•ญ์„ ๊ณต์œ ํ–ˆ์Šต๋‹ˆ๋‹ค. Artem์€ ์˜ˆ์นดํ…Œ๋ฆฐ๋ถ€๋ฅดํฌ Java ์ปค๋ฎค๋‹ˆํ‹ฐ JUG.EKB ์ฑ„๋„์—์„œ ํ”„๋ ˆ์  ํ…Œ์ด์…˜์„ ์ง„ํ–‰ํ•œ ํ›„ ์ฝ”๋”๊ฐ€ IDE์—์„œ ๋” ์‰ฝ๊ณ  ๋น ๋ฅด๊ฒŒ ์ž‘์—…ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ๋ช‡ ๊ฐ€์ง€ ์‚ฌ์šฉ์ž ์ •์˜ ๊ธฐ์ˆ ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ณด๊ณ ์„œ์—๋Š” ์ฝ”๋“œ์˜ ์‹œ๊ฐ์  ๋ฐ๋ชจ๊ฐ€ ํ•จ๊ป˜ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.
์‹œ๋ฆฌ์ฆˆ์˜ ๊ธฐํƒ€ ์ž๋ฃŒ:
์ฝ”๋ฉ˜ํŠธ
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION