JDK๋?
JDK(Java Development Kit)๋ ์๋ฐ ์ ํ๋ฆฌ์ผ์ด์
์ ๊ฐ๋ฐํ๊ธฐ ์ํ ์ํํธ์จ์ด ๊ฐ๋ฐ ํคํธ์
๋๋ค. ์๋ฐ ํ๋ก๊ทธ๋จ์ ์์ฑ, ์ปดํ์ผ, ๋๋ฒ๊น
๋ฐ ์คํํ๋ ๋ฐ ํ์ํ ๋ชจ๋ ๋๊ตฌ๋ฅผ ํฌํจํ๊ณ ์์ต๋๋ค.
JDK์ ์ฃผ์ ๊ตฌ์ฑ ์์
๊ตฌ์ฑ ์์ | ์ค๋ช
|
JRE
(Java Runtime Environment) | ์๋ฐ ํ๋ก๊ทธ๋จ์ ์คํํ๊ธฐ ์ํ ํ๊ฒฝ์ผ๋ก, JVM๊ณผ ํต์ฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํฌํจํฉ๋๋ค. |
JVM
(Java Virtual Machine) | ์๋ฐ ๋ฐ์ดํธ์ฝ๋๋ฅผ ์คํํ๋ ๊ฐ์ ๋จธ์ ์ผ๋ก, ํ๋ซํผ ๋
๋ฆฝ์ฑ์ ์ ๊ณตํฉ๋๋ค. |
๊ฐ๋ฐ ๋๊ตฌ | javac (์ปดํ์ผ๋ฌ), java (์ธํฐํ๋ฆฌํฐ), javadoc (๋ฌธ์ ์์ฑ), jar (์์นด์ด๋ธ ๋๊ตฌ) ๋ฑ์ ๋ช
๋ น์ค ๋๊ตฌ๋ค์ด ํฌํจ๋ฉ๋๋ค. |
ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ | ๋ค์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ์๋ฐ ํด๋์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ(Java API)๊ฐ ํฌํจ๋์ด ์์ต๋๋ค. |
JDK vs JRE
โข
JDK: ๊ฐ๋ฐ์์ฉ์ผ๋ก, ์ปดํ์ผ๋ฌ์ ๊ฐ๋ฐ ๋๊ตฌ๋ฅผ ํฌํจํ์ฌ ์๋ฐ ์ ํ๋ฆฌ์ผ์ด์
์ ๊ฐ๋ฐํ ์ ์์ต๋๋ค.
โข
JRE: ์ต์ข
์ฌ์ฉ์์ฉ์ผ๋ก, ์๋ฐ ์ ํ๋ฆฌ์ผ์ด์
์ ์คํํ๋ ๋ฐ๋ง ํ์ํ ํ๊ฒฝ์ ์ ๊ณตํฉ๋๋ค.
์ฃผ์ ํน์ง
โข
ํ๋ซํผ ๋
๋ฆฝ์ฑ: "Write Once, Run Anywhere" - ํ ๋ฒ ์์ฑํ ์ฝ๋๋ฅผ ๋ค์ํ ์ด์์ฒด์ ์์ ์คํํ ์ ์์ต๋๋ค.
โข
๊ฐ์ฒด ์งํฅ: ์๋ฐ๋ ์์ํ ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์
๋๋ค.
โข
์๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ: ๊ฐ๋น์ง ์ปฌ๋ ์
์ ํตํด ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋์ผ๋ก ๊ด๋ฆฌํฉ๋๋ค.
โข
๊ฐ๋ ฅํ ๋ณด์: ๋ณด์ ๊ด๋ฆฌ์์ ์๋๋ฐ์ค ํ๊ฒฝ์ ์ ๊ณตํฉ๋๋ค.
โข
๋ฉํฐ์ค๋ ๋ฉ: ๋์์ ์ฌ๋ฌ ์์
์ ์ฒ๋ฆฌํ ์ ์๋ ๋ฉํฐ์ค๋ ๋ฉ์ ์ง์ํฉ๋๋ค.
JDK ๋ฒ์
JDK๋ ์ง์์ ์ผ๋ก ์
๋ฐ์ดํธ๋๋ฉฐ, ์ฃผ์ ๋ฒ์ ๋ง๋ค ์๋ก์ด ๊ธฐ๋ฅ๊ณผ ์ฑ๋ฅ ๊ฐ์ ์ด ์ด๋ฃจ์ด์ง๋๋ค. Oracle JDK์ OpenJDK ๋ฑ ๋ค์ํ ๋ฐฐํฌํ์ด ์กด์ฌํ๋ฉฐ, ๊ฐ ๋ฒ์ ์ LTS(Long Term Support) ๋๋ ์ผ๋ฐ ๋ฆด๋ฆฌ์ค๋ก ๊ตฌ๋ถ๋ฉ๋๋ค.



