
๐ฅ๏ธJava ํ๋ก๊ทธ๋๋ฐ: ๋ฐ์ดํธ์ฝ๋ ์คํ๊ณผ All-in-One ์ค์น ๋ฐ ์คํ
Java๋ ํ๋ซํผ ๋
๋ฆฝ์ ์ธ ์ธ์ด๋ก, ํ ๋ฒ ์์ฑ๋ ํ๋ก๊ทธ๋จ์ ๋ค์ํ ์ด์์ฒด์ ์์ ์คํ๋ ์ ์์ต๋๋ค.
์ด๋ฌํ ํน์ฑ์ ํต์ฌ์ ๋ฐ์ดํธ์ฝ๋์ ์์ต๋๋ค.
๋ํ, ์ด๋ณด ๊ฐ๋ฐ์์๊ฒ ์ ํฉํ All-in-One ํตํฉ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ค์นํ๊ณ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ๋ ์ค์ํฉ๋๋ค.
์ด๋ฒ ํฌ์คํ
์์๋ Java ํ๋ก๊ทธ๋จ์ด ์ด๋ป๊ฒ ๋ฐ์ดํธ์ฝ๋๋ก ์คํ๋๋์ง,
๊ทธ๋ฆฌ๊ณ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ฝ๊ฒ ๊ตฌ์ถํ ์ ์๋ All-in-One ์ค์น์ ์คํ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค.
1. Java ๋ฐ์ดํธ์ฝ๋ ์คํ ๊ณผ์
Java๋ 'Write Once, Run Anywhere(WORA)'๋ฅผ ๋ชฉํ๋ก ํ๋ ์ธ์ด์
๋๋ค.
์ด ์๋ฏธ๋ ํ ๋ฒ ์์ฑํ Java ์ฝ๋๊ฐ ๋ค์ํ ํ๋ซํผ์์ ์์ ์์ด ์คํ๋ ์ ์๋ค๋ ๊ฒ์
๋๋ค.
์ด๋ฌํ ํน์ง์ ๋ฐ์ดํธ์ฝ๋๋ฅผ ํตํด ์คํ๋ฉ๋๋ค.
๋ฐ์ดํธ์ฝ๋(Bytecode)๋?
Java ์์ค์ฝ๋๋ฅผ ์์ฑํ ํ, ์ด๋ฅผ ์ปดํ์ผํ๊ฒ ๋๋ฉด ๋ฐ์ดํธ์ฝ๋๋ผ๋ ์ค๊ฐ ํํ์ ํ์ผ๋ก ๋ณํ๋ฉ๋๋ค.
๋ฐ์ดํธ์ฝ๋๋ .class ํ์ผ๋ก ์ ์ฅ๋๋ฉฐ, ์ด์์ฒด์ ์ ์๊ด์์ด Java ํ๋ก๊ทธ๋จ์ ์คํํ ์ ์๊ฒ ํด์ฃผ๋ ์ญํ ์ ํฉ๋๋ค.
์ค์ ํ๋ก๊ทธ๋จ ์คํ์ ๋ฐ์ดํธ์ฝ๋๋ฅผ ํด์ํ๊ณ ์คํํ๋ 'Java Virtual Machine(JVM)'์์ ์ด๋ฃจ์ด์ง๋๋ค.
๋ฐ์ดํธ์ฝ๋ ์คํ ๊ณผ์
Java ์์ค ์์ฑ:
- ๋จผ์ .java ํ์ฅ์๋ฅผ ๊ฐ์ง ์์ค ํ์ผ์ ์์ฑํฉ๋๋ค.
- ์์:
public class HelloWorld { public static void main(String[ ] args) { System.out.println("Hello, World!"); } }
|
์ปดํ์ผ:
- ์์ฑ๋ ์์ค ํ์ผ์ javac(Java Compiler)๋ฅผ ์ด์ฉํด ์ปดํ์ผํฉ๋๋ค.
- ์ด ๊ณผ์ ์์ .java ํ์ผ์ด .class ํ์ฅ์๋ฅผ ๊ฐ์ง ๋ฐ์ดํธ์ฝ๋ ํ์ผ๋ก ๋ณํ๋ฉ๋๋ค.
- ์์:
๋ฐ์ดํธ์ฝ๋ ์คํ:
- ๋ณํ๋ ๋ฐ์ดํธ์ฝ๋ ํ์ผ์ JVM์ ํตํด ์คํ๋ฉ๋๋ค.
- JVM์ ๋ฐ์ดํธ์ฝ๋๋ฅผ ํด์ํ์ฌ ์ด์์ฒด์ ์์ ์ดํดํ ์ ์๋ ๋ค์ดํฐ๋ธ ์ฝ๋๋ก ๋ณํํ ๋ค ํ๋ก๊ทธ๋จ์ ์คํํฉ๋๋ค.
- ์์:
JVM์ ์ญํ
JVM(Java Virtual Machine)์ Java์ ํต์ฌ ๊ตฌ์ฑ ์์๋ก, ๋ฐ์ดํธ์ฝ๋๋ฅผ ์คํํ๋ ๊ฐ์ ๋จธ์ ์
๋๋ค.
์ด์์ฒด์ ์ ๋ง๋ JVM๋ง ์ค์นํ๋ฉด Java ํ๋ก๊ทธ๋จ์ ์ด๋์๋ ์คํ๋ ์ ์์ต๋๋ค.
๋ฐ๋ผ์, Java ํ๋ก๊ทธ๋จ์ ์์ฑํ๊ณ ์คํํ๋ ๊ณผ์ ์ JVM๊ณผ ๋ฐ์ดํธ์ฝ๋ ๋๋ถ์ ๋งค์ฐ ์ ์ฐํฉ๋๋ค.
2. All-in-One ๊ฐ๋ฐ ํ๊ฒฝ ์ค์น ๋ฐ ์คํ
๋ฐฑ์๋ ๊ฐ๋ฐ์ ์ํด์๋ ํธ๋ฆฌํ 'ํตํฉ ๊ฐ๋ฐ ํ๊ฒฝ(IDE)'์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
All-in-One IDE๋ Java ๊ฐ๋ฐ์ ํ์ํ ๋ชจ๋ ๋๊ตฌ๋ฅผ ํ ๋ฒ์ ์ค์นํ ์ ์๊ฒ ํด์ฃผ์ด ์ด๋ณด์์๊ฒ ๋งค์ฐ ์ ์ฉํฉ๋๋ค.
๋ํ์ ์ธ All-in-One IDE๋ Eclipse, IntelliJ IDEA, STS(Spring Tool Suite) ๋ฑ์ด ์์ต๋๋ค.
All-in-One IDE ์ค์น
Eclipse ์ค์น:
- Eclipse ๊ณต์ ์น์ฌ์ดํธ์ ์ ์ํ์ฌ Eclipse IDE for Java Developers๋ฅผ ๋ค์ด๋ก๋ํฉ๋๋ค.
- ์ค์น ํ๋ก๊ทธ๋จ์ ์คํํ ํ, ํ์ํ ๊ตฌ์ฑ ์์๋ฅผ ์ ํํ์ฌ ์ค์น๋ฅผ ์๋ฃํฉ๋๋ค.
- ์ค์น๊ฐ ์๋ฃ๋๋ฉด Eclipse๋ฅผ ์คํํ๊ณ , ํ๋ก์ ํธ๋ฅผ ์์ฑํ์ฌ Java ์ฝ๋๋ฅผ ์์ฑํ๊ณ ์คํํ ์ ์์ต๋๋ค.
IntelliJ IDEA ์ค์น:
- JetBrains ๊ณต์ ์น์ฌ์ดํธ์์ IntelliJ IDEA Community Edition(๋ฌด๋ฃ ๋ฒ์ )์ ๋ค์ด๋ก๋ํ์ฌ ์ค์นํฉ๋๋ค.
- ์ค์น ํ, IntelliJ IDEA๋ฅผ ์คํํ์ฌ Java ํ๋ก์ ํธ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.
STS(Spring Tool Suite) ์ค์น:
- Spring ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ ๋ฐฑ์๋ ๊ฐ๋ฐ์ ์ ํฉํ ํตํฉ ๊ฐ๋ฐ ํ๊ฒฝ์
๋๋ค.
- Spring ๊ณต์ ์ฌ์ดํธ์์ STS๋ฅผ ๋ค์ด๋ก๋ํ์ฌ ์ค์นํฉ๋๋ค.
All-in-One IDE ์คํ
์๋ก์ด ํ๋ก์ ํธ ์์ฑ:
- ์ค์นํ IDE๋ฅผ ์คํํ ํ, File > New > Java Project๋ฅผ ์ ํํ์ฌ ์๋ก์ด ํ๋ก์ ํธ๋ฅผ ์์ฑํฉ๋๋ค.
- ํ๋ก์ ํธ ์ด๋ฆ๊ณผ ๊ฒฝ๋ก๋ฅผ ์ค์ ํ ํ, Finish ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
์ฝ๋ ์์ฑ ๋ฐ ์คํ:
- ํ๋ก์ ํธ๊ฐ ์์ฑ๋๋ฉด src ํด๋์์ ํด๋์ค๋ฅผ ์์ฑํ๊ณ , Java ์ฝ๋๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.
- ์ฝ๋ ์์ฑ์ ์๋ฃํ ํ, ์๋จ์ Run ๋ฒํผ์ ํด๋ฆญํ์ฌ ํ๋ก๊ทธ๋จ์ ์คํํฉ๋๋ค.
- ํ๋ก๊ทธ๋จ์ ์ถ๋ ฅ ๊ฒฐ๊ณผ๋ IDE ํ๋จ์ ์ฝ์ ์ฐฝ์์ ํ์ธํ ์ ์์ต๋๋ค.
All-in-One IDE์ ์ฅ์
- ์๋ ์์ฑ: ์ฝ๋๋ฅผ ์์ฑํ ๋ ์๋ ์์ฑ ๊ธฐ๋ฅ์ด ์์ด ๊ฐ๋ฐ ์๊ฐ์ ์ค์ผ ์ ์์ต๋๋ค.
- ์ฝ๋ ์ค๋ฅ ๊ฐ์ง: ์ค์๊ฐ์ผ๋ก ์ฝ๋ ์ค๋ฅ๋ฅผ ๊ฐ์งํ๊ณ ์์ ํ ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
- ๋๋ฒ๊น
๊ธฐ๋ฅ: ์ค๋จ์ ์ค์ ๋ฐ ์คํ ํ๋ฆ์ ์ถ์ ํ ์ ์์ด ๋ฌธ์ ํด๊ฒฐ์ ๋์์ด ๋ฉ๋๋ค.
- ํ๋ก์ ํธ ๊ด๋ฆฌ: ์ฌ๋ฌ ํ๋ก์ ํธ๋ฅผ ํ ๋ฒ์ ๊ด๋ฆฌํ ์ ์์ผ๋ฉฐ, ๋น๋ ๋๊ตฌ์์ ํตํฉ๋ ์ฉ์ดํฉ๋๋ค.
Java ํ๋ก๊ทธ๋๋ฐ์์ ๋ฐ์ดํธ์ฝ๋์ JVM์ ์ญํ ์ ์ดํดํ๋ ๊ฒ์ Java์ ํ๋ซํผ ๋
๋ฆฝ์ฑ์ ์ดํดํ๋ ๋ฐ ์ค์ํ ๋ถ๋ถ์
๋๋ค.
๋ํ, ์ด๋ณด์๋ถํฐ ์ ๋ฌธ๊ฐ๊น์ง ๋ชจ๋ ํ์ฉํ ์ ์๋ All-in-One ํตํฉ ๊ฐ๋ฐ ํ๊ฒฝ์ ํตํด ๋ณด๋ค ํจ์จ์ ์ผ๋ก ๊ฐ๋ฐ์ ์งํํ ์ ์์ฃ !
Java์ ๊ฐ๋ ฅํ ์ฅ์ ์ ์ต๋ํ ํ์ฉํ๊ธฐ ์ํด์๋ ์ฌ๋ฐ๋ฅธ ๊ฐ๋ฐ ํ๊ฒฝ ์ค์ ์ด ํ์์ ์
๋๋ค.
์ด ํฌ์คํ
์ ํตํด ๋ฐ์ดํธ์ฝ๋ ์คํ๊ณผ ๊ฐ๋ฐ ํ๊ฒฝ ๊ตฌ์ถ์ ๋ํ ์ดํด๋ฅผ ๋ฐํ์ผ๋ก, Java ๋ฐฑ์๋ ๊ฐ๋ฐ์๋ก์์ ์ฒซ๊ฑธ์์ ๋ด๋์ ์ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค!

๐ฅ๏ธJava ํ๋ก๊ทธ๋๋ฐ: ๋ฐ์ดํธ์ฝ๋ ์คํ๊ณผ All-in-One ์ค์น ๋ฐ ์คํ
Java๋ ํ๋ซํผ ๋ ๋ฆฝ์ ์ธ ์ธ์ด๋ก, ํ ๋ฒ ์์ฑ๋ ํ๋ก๊ทธ๋จ์ ๋ค์ํ ์ด์์ฒด์ ์์ ์คํ๋ ์ ์์ต๋๋ค.
์ด๋ฌํ ํน์ฑ์ ํต์ฌ์ ๋ฐ์ดํธ์ฝ๋์ ์์ต๋๋ค.
๋ํ, ์ด๋ณด ๊ฐ๋ฐ์์๊ฒ ์ ํฉํ All-in-One ํตํฉ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ค์นํ๊ณ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ๋ ์ค์ํฉ๋๋ค.
์ด๋ฒ ํฌ์คํ ์์๋ Java ํ๋ก๊ทธ๋จ์ด ์ด๋ป๊ฒ ๋ฐ์ดํธ์ฝ๋๋ก ์คํ๋๋์ง,
๊ทธ๋ฆฌ๊ณ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ฝ๊ฒ ๊ตฌ์ถํ ์ ์๋ All-in-One ์ค์น์ ์คํ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค.
1. Java ๋ฐ์ดํธ์ฝ๋ ์คํ ๊ณผ์
Java๋ 'Write Once, Run Anywhere(WORA)'๋ฅผ ๋ชฉํ๋ก ํ๋ ์ธ์ด์ ๋๋ค.
์ด ์๋ฏธ๋ ํ ๋ฒ ์์ฑํ Java ์ฝ๋๊ฐ ๋ค์ํ ํ๋ซํผ์์ ์์ ์์ด ์คํ๋ ์ ์๋ค๋ ๊ฒ์ ๋๋ค.
์ด๋ฌํ ํน์ง์ ๋ฐ์ดํธ์ฝ๋๋ฅผ ํตํด ์คํ๋ฉ๋๋ค.
๋ฐ์ดํธ์ฝ๋(Bytecode)๋?
Java ์์ค์ฝ๋๋ฅผ ์์ฑํ ํ, ์ด๋ฅผ ์ปดํ์ผํ๊ฒ ๋๋ฉด ๋ฐ์ดํธ์ฝ๋๋ผ๋ ์ค๊ฐ ํํ์ ํ์ผ๋ก ๋ณํ๋ฉ๋๋ค.
๋ฐ์ดํธ์ฝ๋๋ .class ํ์ผ๋ก ์ ์ฅ๋๋ฉฐ, ์ด์์ฒด์ ์ ์๊ด์์ด Java ํ๋ก๊ทธ๋จ์ ์คํํ ์ ์๊ฒ ํด์ฃผ๋ ์ญํ ์ ํฉ๋๋ค.
์ค์ ํ๋ก๊ทธ๋จ ์คํ์ ๋ฐ์ดํธ์ฝ๋๋ฅผ ํด์ํ๊ณ ์คํํ๋ 'Java Virtual Machine(JVM)'์์ ์ด๋ฃจ์ด์ง๋๋ค.
๋ฐ์ดํธ์ฝ๋ ์คํ ๊ณผ์
Java ์์ค ์์ฑ:
์ปดํ์ผ:
๋ฐ์ดํธ์ฝ๋ ์คํ:
JVM์ ์ญํ
JVM(Java Virtual Machine)์ Java์ ํต์ฌ ๊ตฌ์ฑ ์์๋ก, ๋ฐ์ดํธ์ฝ๋๋ฅผ ์คํํ๋ ๊ฐ์ ๋จธ์ ์ ๋๋ค.
์ด์์ฒด์ ์ ๋ง๋ JVM๋ง ์ค์นํ๋ฉด Java ํ๋ก๊ทธ๋จ์ ์ด๋์๋ ์คํ๋ ์ ์์ต๋๋ค.
๋ฐ๋ผ์, Java ํ๋ก๊ทธ๋จ์ ์์ฑํ๊ณ ์คํํ๋ ๊ณผ์ ์ JVM๊ณผ ๋ฐ์ดํธ์ฝ๋ ๋๋ถ์ ๋งค์ฐ ์ ์ฐํฉ๋๋ค.
2. All-in-One ๊ฐ๋ฐ ํ๊ฒฝ ์ค์น ๋ฐ ์คํ
๋ฐฑ์๋ ๊ฐ๋ฐ์ ์ํด์๋ ํธ๋ฆฌํ 'ํตํฉ ๊ฐ๋ฐ ํ๊ฒฝ(IDE)'์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
All-in-One IDE๋ Java ๊ฐ๋ฐ์ ํ์ํ ๋ชจ๋ ๋๊ตฌ๋ฅผ ํ ๋ฒ์ ์ค์นํ ์ ์๊ฒ ํด์ฃผ์ด ์ด๋ณด์์๊ฒ ๋งค์ฐ ์ ์ฉํฉ๋๋ค.
๋ํ์ ์ธ All-in-One IDE๋ Eclipse, IntelliJ IDEA, STS(Spring Tool Suite) ๋ฑ์ด ์์ต๋๋ค.
All-in-One IDE ์ค์น
Eclipse ์ค์น:
IntelliJ IDEA ์ค์น:
STS(Spring Tool Suite) ์ค์น:
All-in-One IDE ์คํ
์๋ก์ด ํ๋ก์ ํธ ์์ฑ:
์ฝ๋ ์์ฑ ๋ฐ ์คํ:
All-in-One IDE์ ์ฅ์
Java ํ๋ก๊ทธ๋๋ฐ์์ ๋ฐ์ดํธ์ฝ๋์ JVM์ ์ญํ ์ ์ดํดํ๋ ๊ฒ์ Java์ ํ๋ซํผ ๋ ๋ฆฝ์ฑ์ ์ดํดํ๋ ๋ฐ ์ค์ํ ๋ถ๋ถ์ ๋๋ค.
๋ํ, ์ด๋ณด์๋ถํฐ ์ ๋ฌธ๊ฐ๊น์ง ๋ชจ๋ ํ์ฉํ ์ ์๋ All-in-One ํตํฉ ๊ฐ๋ฐ ํ๊ฒฝ์ ํตํด ๋ณด๋ค ํจ์จ์ ์ผ๋ก ๊ฐ๋ฐ์ ์งํํ ์ ์์ฃ !
Java์ ๊ฐ๋ ฅํ ์ฅ์ ์ ์ต๋ํ ํ์ฉํ๊ธฐ ์ํด์๋ ์ฌ๋ฐ๋ฅธ ๊ฐ๋ฐ ํ๊ฒฝ ์ค์ ์ด ํ์์ ์ ๋๋ค.
์ด ํฌ์คํ ์ ํตํด ๋ฐ์ดํธ์ฝ๋ ์คํ๊ณผ ๊ฐ๋ฐ ํ๊ฒฝ ๊ตฌ์ถ์ ๋ํ ์ดํด๋ฅผ ๋ฐํ์ผ๋ก, Java ๋ฐฑ์๋ ๊ฐ๋ฐ์๋ก์์ ์ฒซ๊ฑธ์์ ๋ด๋์ ์ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค!