"ํ๋ฒํ" ์ธ๊ฐ ์ธ์ด์ ์ํฉ์ ๋ชจ๋ ๋ช ํํฉ๋๋ค. ์ค๋๋ ์ ์ธ๊ณ์์๋ ๋ชจ๊ตญ์ด์ ์์ด๋ฅผ ์ ์์์ผ ํฉ๋๋ค. ๋ค๋ฅธ ์ธ์ด์ ํ์์ฑ์ ํน์ ์ํฉ์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค. ์ํํธ์จ์ด ๊ฐ๋ฐ์ ์ธ๊ณ์์ "ํ๋ก๊ทธ๋๋ฐ์ ์์ด"๋ผ๊ณ ๋ถ๋ฆด ์ ์๋ ๋ณดํธ์ ์ธ ์ธ์ด๋ ์์ต๋๋ค. ์ต์ 6๊ฐ ์ด์์ ์์ฅ ๋ฆฌ๋๊ฐ ์ด ํ์ดํ์ ์ด๋งํฉ๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๊ฒ์ ๋ฌ์ฑํ๋ ๋ฐ ์ง์งํ๊ฒ ๊ทผ์ ํ ๊ฒ์ Java์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ์ ์ด์ ๊ฐ ์์ต๋๋ค...
ํ์ ํ๋ก๊ทธ๋๋จธ ๋๋ ์ ๋ฌธ ํ๋ก๊ทธ๋๋จธ์ ๊ด์ ์์ Java์ ์ข์ ์
์ด ์ธ์ด๋ ์์ฃผ ๊ฐ๋จํฉ๋๋ค.
"๊ฐ๋จํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด"๋ผ๋ ๋ฌธ๊ตฌ๋ ์ค์ ๋ก ๋ฌด์์ ์๋ฏธํฉ๋๊น? ์ผ๋ฐ์ ์ผ๋ก ์ด๊ฒ์ ๋ ๊ฐ์ง๋ฅผ ์๋ฏธํฉ๋๋ค. ์ฒซ ๋ฒ์งธ๋ ํ๋ก๊ทธ๋๋ฐ์ ๋ํด ์ ํ ๋ชจ๋ฅด๋ ์ฌ๋๋ค๋ ์ฝ๊ฒ ๋ฐฐ์ธ ์ ์๋ค๋ ๊ฒ์ ๋๋ค. ๋์งธ, ๋ค์ํ ๋ฌธ์ ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ํด๊ฒฐํ ์ ์์ต๋๋ค. ์ด๋ฏธ ์ธ์ด๋ฅผ ๋ฐฐ์ฐ๋ ค๊ณ ์๋ํ ์ฌ๋๋ค์ ์ด๊ฒ์ ๋์ด ํ๊ฐํ ๊ฒ์ ๋๋ค. ์ด ๋ ๊ฐ์ง ์ฌํญ์ ๋ชจ๋ Java์ ์์ ํ ์ ์ฉ๋ฉ๋๋ค.
Java๋ฅผ ๋ฐฐ์ฐ๋ ๊ฒ์ ์ ๋ง ์ฝ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ชจ๋ ์๋์ ์ผ๋ก ๋์ ์์ค์ ์ธ์ด์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ด๋ ํ์ ์์ค ์ธ์ด๋ก ์ดํดํด์ผ ํ๋ ์ก์ด ์์ผ๋ก ๊น์ด ๋ค์ด๊ฐ ํ์๊ฐ ์์์ ์๋ฏธํฉ๋๋ค. ์๋ฅผ ๋ค์ด Java์์๋ C++์์์ ๋ฌ๋ฆฌ ๊ฐ๋น์ง ์์ง(์: ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ฐจ์งํ์ง๋ง ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ "์ฃฝ์ด๋" ๊ฐ์ฒด)์ด ์ฌ์ฉ์ ๊ฐ์ ์์ด ๋ฐ์ํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋์์ Java๋ ๋๋ถ๋ถ์ ์์ ์ ์ฒ๋ฆฌํ ์ ์์ ๋งํผ ์ถฉ๋ถํ ๋ฎ์ ์์ค์ ๋๋ค.
ํ ๊ฐ์ง ์ค์ํ ์ ์ ๋ช ํํํฉ์๋ค. ์ฒ์์๋ Java๋ณด๋ค ๋ฐฐ์ฐ๊ธฐ ์ฌ์ด ์ธ์ด๊ฐ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด Python โ ๊ฐ๊ฒฐํ๊ณ ์ดํดํ๊ธฐ ์ฌ์ด ๊ตฌ๋ฌธ ๋๋ถ์ ๋๋ค. ๋๋ ํน๋ณํ ๊ต์ก์ ์ํด ๋ง๋ค์ด์ง ๋ ผ๋ฆฌ์ ์ผ๋ก ๊ตฌ์กฐํ๋ ์ธ์ด์ธ Pascal/Delphi(๊ทธ๋ฌ๋ ์ง๊ธ์ ์ฃผ๋ก ๊ด์ฑ ๋๋ฌธ์ ์ฃผ๋ก ๊ณ ๋ฑํ๊ต์์ ๊ณต๋ถํฉ๋๋ค).
๊ทธ๋ฐ๋ฐ ์ด๋ ์๊ฐ ๊ฐ์๊ธฐ ์ํฉ์ด ๋ฐ๋๋๋ค. ๋๋ถ๋ถ์ "์ค์ " ์์ ์ Python๋ณด๋ค Java์์ ํด๊ฒฐํ๊ธฐ ์ฝ๊ณ Delphi๋ณด๋ค ํจ์ฌ ๋ ์ฝ์ต๋๋ค.
๋ชจ๋ ๊ฒฝ์ฐ๋ฅผ ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฐ ํ๋ ์์ํฌ
๊ฐ๋ฐ์๊ฐ ์ด๋ ค์ด ํ๋ก๊ทธ๋๋ฐ ์์ ์ ์ง๋ฉดํ๋ฉด ์ด๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ๋์์ด ๋๋ ๊ธฐ์ฑํ Java ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์ด๋ฏธ ์์ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค. ์ฌ๊ธฐ์ ์ค์ํ ๊ฒ์ ๊ฒ์ผ๋ฅด์ง ์๋ ๊ฒ์ ๋๋ค. ์ค๋ช ์๋ฅผ ์ฝ๊ฑฐ๋ Stack Overflow ์ ๊ฐ์ ์ธ๊ธฐ ์๋ ํฌ๋ผ์์ ์ง๋ฌธ์ ํ์ญ์์ค .
์์ง ์ฐ๋ฆฌ์ ํจ๊ป ๊ณต๋ถํ๊ณ ์๋ค๋ฉด CodeGym์ " ๋์๋ง " ์น์ ์์ ์ง๋ฌธ์ ํ์ญ์์ค. ํ์๋ค์ด ์ด๋ป๊ฒ ์๋ํ๋์ง ์ดํดํ๊ธฐ ์ํด ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ ํ๋ ๋ฒ ์ง์ ๊ตฌํํ๋ ๊ฒ์ด ๋งค์ฐ ์ ์ฉํ๋ค๊ณ ์๊ฐํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ค์ ์์ ์์๋ ๋ ์ด์ ์ด๋ฅผ ์๊ธฐํ ํ์๊ฐ ์์ต๋๋ค. Java์ ์ด๋ฏธ ์ด๋ฅผ ์ํ ๋๊ตฌ(ํนํ Collections.sort())๊ฐ ์๋ค๋ ์ฌ์ค๋ง ์๋ฉด ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ ํ์ต์ ์ํ ์์์ผ ๋ฟ์ ๋๋ค. Java๋ ์ค๋ซ๋์ ์ฌ๊ฐํ ์์ ์ ์ ๊ทน์ ์ผ๋ก ์ฌ์ฉ๋์๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ๊ฒ(์, ๊ฑฐ์ ๋ชจ๋ ๊ฒ)์ ๋ํ Java ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ํ๋ ์์ํฌ๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
๊ฑฐ๋ํ ์ปค๋ฎค๋ํฐ ๋ฐ ํ์ง ๋ฌธ์
ํ๋ก๊ทธ๋๋ฐ ํฌ๋ผ์์ 3๋ฒํผ ์คํ ์ค๋ฒํ๋ก ํค๋ณด๋ ์ ๋ํ ๋๋ด์ ์ด๋ฏธ ๋ณด์ จ์ต๋๊น ? ์, ์ด ๋๋ด์ ์ฌ์ค๊ณผ ๊ทธ๋ฆฌ ๋ฉ์ง ์์ต๋๋ค. ํ๋ก๊ทธ๋๋จธ๋ ๋ค๋ฅธ ์ฌ๋์ ์ฝ๋๋ฅผ ๋งค์ฐ ์์ฃผ ์ฌ์ฉํ๋ฉฐ, ๊ฐ์ฅ ์ธ๊ธฐ ์๋ ๊ฐ๋ฐ์ ํฌ๋ผ์์ ์ง๋ฌธ์ ํ๋ ์ฌ๋์ ์ด๋ณด์๋ง์ด ์๋๋๋ค. ์๋ฅผ ๋ค์ด Stack Overflow์์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ๋์์ ์ฃผ๋ Java ์ ๋ฌธ๊ฐ๊ฐ ๋ง์ด ์์ต๋๋ค. ๋ฐ๋ผ์ ๋ฌธ์ ํด๊ฒฐ์ ๋์์ ๋ฐ์ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค. ๋ํ ๋ฌด์ธ๊ฐ๋ฅผ ์ดํดํ์ง ๋ชปํ๋ ๊ฒฝ์ฐ ๋ฌธ์์ ํ๋ ๋๋ ๋ค๋ฅธ ๊ธฐ์ฌ์ ๋์์ ๋ฐ์ ์์๋ผ ์ ์์ต๋๋ค. Java์๋ ๋งค์ฐ ํ๋ฅญํ ๋ฌธ์๊ฐ ์์ต๋๋ค.
Java์ ๊ธฐ์ ๋ฐ ๊ตฌ์กฐ์ ์ด์
ํฌ๋ก์ค ํ๋ซํผ
"Write Once, Run Anywhere"๋ Java์ ๋ํ ๋ฌธ๊ตฌ์ ๋๋ค. ์ด์ ์ฒด์ ๊ฐ ๋ค๋ฅธ ์ปดํจํฐ์์ ์คํํ๊ธฐ ์ํด Java ์์ฉ ํ๋ก๊ทธ๋จ์ ์ฌ์์ ํ ํ์๊ฐ ์์ต๋๋ค. ๋ค์ํ ์ด์ ์ฒด์ ์ฉ์ผ๋ก ์์ฑ๋ ๊ฐ์ ๋จธ์ ์ ์ค์นํด์ผ ํฉ๋๋ค.
๋ฌผ๋ก ๋ชจ๋ ๊ฒ์ด ๊ทธ๋ ๊ฒ ๊ฐ๋จํ์ง๋ ์์ต๋๋ค. ๋ช ๋ฐฑํ ํ์ ์ด์ ์ ํด๋ํฐ์์ "๋ฌด๊ฑฐ์ด" ๊ธฐ์ ์ฉ ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํ ๊ฒ์ ๋๋ค. ์ฆ, ๊ฐ์ฅ ์ค๋๋ ์ ํ์๋ Java ๊ฐ์ ๋จธ์ ์ด ์์ต๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ๊ฐ๋ฐ์ ํฌ๊ฒ ๋จ์ํํฉ๋๋ค.
๊ฐ์ฒด ๋ฐฉํฅ
Java๋ ๊ฐ์ฒด ์งํฅ ์ธ์ด์ด๋ฉฐ ์ด ์ธ์ด์์ ์ด "๋ฐฉํฅ"์ ์ต์์ ๋ฐฉ์์ผ๋ก ๊ตฌํ๋ฉ๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ๋ชจ๋ ๊ฒ์ด ๊ฐ์ฒด์ด๋ฉฐ ์์, ์ถ์ํ, ์บก์ํ ๋ฐ ๋คํ์ฑ์ ๊ฐ๋ ์ ์ต๋ํ ๋ฐฐ์ฐ๊ฒ ๋ฉ๋๋ค.
ํ์ํ ๋ฉํฐ์ค๋ ๋ฉ
๋ค์ค ์ค๋ ๋ฉ์ ์ฐจ๋จ ์์ ๋ฐ ๊ทธ๋ํฝ ์ธํฐํ์ด์ค๋ฅผ ์ฒ๋ฆฌํ ๋ ํ์์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ผ๋ฐ์ ์ผ๋ก ๋ณ๋ ฌ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ๊ตฌํํ ์ ์๋ค๋ฉด ๊ทธ๋ ๊ฒ ํ์ง ์๋ ์ด์ ๋ ๋ฌด์์ ๋๊น?
Java๋ ๊ฐ๋จํ ๋๊ธฐํ ๋ฐ ์ค๋ ๋ ์ผ์ ์ค๋จ/์ฌ๊ฐ ๋ฐฉ๋ฒ์์ ํน์ ํด๋์ค์ ์ด๋ฅด๊ธฐ๊น์ง ๊ด๋ฒ์ํ ๋ฉํฐ์ค๋ ๋ฉ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ค์ ๋ก ์ด๋ณด ํ๋ก๊ทธ๋๋จธ์๊ฒ๋ ๋ฉํฐ์ค๋ ๋ฉ์ด ๋งค์ฐ ์ด๋ ต์ต๋๋ค. ์ฆ, Java์๋ ๊ฐ๋ฅํ ํ ํธ๋ฆฌํ๊ฒ ์ฌ์ฉํ ์ ์๋ ๋ชจ๋ ๊ฒ์ด ์์ต๋๋ค.
Java๋ ์ด์ ๋ฒ์ ๊ณผ์ ํ์ ํธํ์ฑ์ ์ ์งํ๋ฉด์ ์ง์์ ์ผ๋ก ๋ฐ์ ํ๊ณ ์์ต๋๋ค.
Java์ 9๋ฒ์งธ ๋ฒ์ ์ ๋ช ๋ ๋์ ์์ ์ค์ผ ์ ์์ง๋ง 10๋ฒ์งธ๋ถํฐ ์์ํ์ฌ Java๋ 6๊ฐ์๋ง๋ค ๋ฒ์ ๋ฒํธ๋ฅผ ๋ณ๊ฒฝํ์ฌ ์ข ์ข ์๋กญ๊ณ ํฅ๋ฏธ๋กญ๊ณ ์ ์ฉํ ๊ธฐ๋ฅ์ ์ป์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ฐ์ฅ ์ข์ ์ ์ ๊ฐ๋ฐ์๊ฐ ์ ๋ฒ์ ์ด ์ถ์๋ ๋๋ง๋ค ๋ชจ๋ ์ฝ๋๋ฅผ ๋ค์ ์์ฑํ ํ์๊ฐ ์๋ค๋ ๊ฒ์ ๋๋ค. ์ด๋ Java๊ฐ ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ๊ด์ฐฐํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ชจ๋ ์ด์ ๋ฒ์ ์ ํ์ ๋ฒ์ ๊ณผ ํธํ๋ฉ๋๋ค. ๋ฌผ๋ก ๋์์ค๊ฐ ์์ง๋ง ๋ค๋ฅธ ๋ง์ ์ธ์ด์ ๋นํด ์ค์ํ์ง ์์ต๋๋ค.
๊ฒฝ๋ ฅ ์ธก๋ฉด์์ Java์ ์ฅ์
์๋ฐ๋ ์ด๋์๋ ์๋ค
Java ๊ฐ๋ฐ์๊ฐ ์ํ๋ ๋๋ก ํ๋๋ฅผ ์ฐพ๊ณ ๋์ค์ ์ฌ๊ต์ก ์์ด ํ๋๋ฅผ ๋ณ๊ฒฝํ๋ ๊ฒ์ด ๋ ์ฝ์ต๋๋ค. ์ด ์ธ์ด๋ ์๋ฒ ์ธก ๊ธ์ต ์๋น์ค ์ ํ๋ฆฌ์ผ์ด์ , ์น ์ ํ๋ฆฌ์ผ์ด์ , ์๋ฒ ๋๋ ์์คํ , ๋น ๋ฐ์ดํฐ ์ ํ๋ฆฌ์ผ์ด์ , Android ์ฑ ๋ฐ ๊ณผํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๋ชฉ๋ก์ ๊ณ์ ๋ ์ ์์ต๋๋ค.
Java๋ ์ด๋์๋ ์์ต๋๋ค. 2 Java ํ๋ก๊ทธ๋๋จธ๋ ์ ์ธ๊ณ ๊ฑฐ์ ๋ชจ๋ ๊ตญ๊ฐ์์ ์ผ์๋ฆฌ๋ฅผ ์ฐพ์ ์ ์์ผ๋ฉฐ ๋ค๋ฅธ ์ธ์ด๋ฅผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์๋ณด๋ค ํจ์ฌ ๋ ์ฝ๊ฒ ์ด ์์ ์ ์ํํ ์ ์์ต๋๋ค. Java๋ ์ฌ์ ํ ์ธ๊ณ์์ ๊ฐ์ฅ ์ธ๊ธฐ ์๋ ์ธ์ด ์ค ํ๋์ ๋๋ค. TIOBE ์ ๊ฐ์ ์์๋ฅผ ์ดํด๋ณด์ธ์ .
์ฐ์ํ ๊ธ์ฌ
๋ง์ง๋ง์ผ๋ก Java์ ๋ํ ์ข์ ์ง์์ ๋ง์ ๋์์ด ๋ฉ๋๋ค.
์์์ ์ค๋ช ํ ๋ชจ๋ ์ด์ ๋๋ฌธ์ CodeGym ๊ณผ์ ์ ๋ง๋ค๊ฒ ๋์์ต๋๋ค. ์ฐ๋ฆฌ๋ ์ง์ฌ์ผ๋ก ์ด ์ธ์ด๋ฅผ ์ฌ๋ํ๊ธฐ ๋๋ฌธ์ Java์ ์ง์คํ๋ ค๊ณ ํฉ๋๋ค. ์ธ๊ธฐ ์๊ณ ์ ๋งํ ๋ฟ๋ง ์๋๋ผ ๊ฐ๋ ฅํ ํ๋ก๊ทธ๋๋จธ ์ฌ๊ณ ๋ฐฉ์์ ๋ฐฐ์ํ๋ ํ์ํ ์์ ๋๊ตฌ์ด๊ธฐ๋ ํฉ๋๋ค. ์ค์ํ ๊ฒ์ ๊ณต๋ถํ๋ ๋์ ๊ฒ์ผ๋ฅด์ง ์๊ณ ๊ฐ๋ฅํ ํ ๋ง์ ์ฝ๋๋ฅผ ์์ฑํ๋ ๊ฒ์ ๋๋ค.
GO TO FULL VERSION