๐๏ธ ๋น์ ์ด Java์ ๋ํด ์์ง ๋ชปํ๋ 10๊ฐ์ง ์ฌ์ค
Java๋ ๊ฐ์ฅ ์ธ๊ธฐ์๊ณ ์ ๋ช ํ ์ธ์ด ์ค ํ๋์ ๋๋ค. ์ฝ๊ธฐ ์ฝ๊ณ ๊ฐ๋จ(?)ํ๊ธฐ ๋๋ฌธ์ ์ ์ธ๊ณ ์๋ฐฑ๋ง ๋ช ์ ์ํด ์ฌ์ฉ๋ฉ๋๋ค. ์ด๋ ๊ฒ ์ ๋ช ํจ์๋ ๋ถ๊ตฌํ๊ณ , ์ฌ๋ฌ๋ถ์ด ๋ชจ๋ฅผ ์๋ ์๋ ๋ช ๊ฐ์ง ํฅ๋ฏธ๋ก์ด Java์ ๊ดํ ์ฌ์ค๋ค์ด ์์ต๋๋ค. ์ด๋ฒ์๋ '๋น์ ์ด ๋ชฐ๋๋ Java๊ฐ ํ ์ ์๋ 10๊ฐ์ง'๋ฅผ ๊ฐ์ ธ์์ต๋๋ค. 1๏ธโฃ Java์ ์๋ ์ด๋ฆ์ OAK. ๋ฏฟ๊ธฐ ์ด๋ ต๊ฒ ์ง๋ง, ์๋ฐ๋ ์๋ ๋ค๋ฅธ ์ด๋ฆ์ผ๋ก ์๋ ค์ ธ ์์์ต๋๋ค. ๋น์ Sun Microsystems์์ ์ผํ๋ James Gosling์ ์๋ก์ด ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก์ ์๋ฐ๋ฅผ ๊ฐ๋ฐํ์์ต๋๋ค. ๊ทธ๋ ๊ทธ์ ์ฌ๋ฌด์ค ์ฐฝ๋ฌธ ๋ฐ์ ์๋ ๋ก๊ฐ๋๋ฌด(oak tree)๋ฅผ ๋ฐ์ ๊ทธ๊ฒ์ ์ด๋ฆ์ ์ง์๊ณ , ํ์ ์ด๋ฆ์ด ์๋ฐ๋ก ๋ฐ๋์์ต๋๋ค. 2๏ธโฃ Java ํ๋ก๊ทธ๋๋ฐ์ ์ฝ๋ฉ์ ์์ํ๋ ์ข์ ๋ฐฉ๋ฒ. ์๋ฐ๋ ์ธ์ฌํ๊ณ ๊ผผ๊ผผํ ์ธ์ด๋ก ๊ฐ์ฃผ๋๊ธฐ๋ ํ๋๋ฐ, ๋๋ฒ๊น ๋ฐ ์ค๋ฅ ํ์์ด C, C++๋ณด๋ค ํจ์ฌ ๋ ์ฝ๊ธฐ ๋๋ฌธ์ ๋๋ค. 3๏ธโฃ ๋ง์ธํฌ๋ํํธ๋ ์ฒ์์ Java๋ก ๋ง๋ค์ด์ก๋ค. ๋ง์ธํฌ๋ํํธ๋ ์ธ๊ณ์์ ๊ฐ์ฅ ๋ง์ด ํ๋ ๊ฒ์ ์ค ํ๋ ์ ๋๋ค. Notch๋ ์ฒ์์ ์๋ฐ๋ก ๊ฒ์์ ๋ง๋ค์๋๋ฐ, ๊ทธ๊ฒ์ด ๊ทธ๊ฐ ๊ฐ์ฅ ์น์ํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์๊ธฐ ๋๋ฌธ์ ๋๋ค. ํ์ Microsoft์ ์ธ์๋ ํ, ๋ง์ธํฌ๋ํํธ์ ์๋ก์ด C++ ๋ฒ์ ์ ์ถ์ํ์ต๋๋ค. 4๏ธโฃ ๊ฐ์ฅ ๋น์ผ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ์ค ํ๋. ์ด ๋ป์, ์ธ์ด ๊ทธ ์์ฒด์ ๊ฐ๊ฒฉ์ด ์๋ ์ ์ธ๊ณ์ ๊ธฐ์ ์ฐ์ ์์ ์๋ฐ๊ฐ ๋ฏธ์น๋ ์ํฅ๋ ฅ์ด ๊ทธ๋งํผ ํฌ๋ค๋ ์๋ฏธ์ ๋๋ค. ์๋ฐ๋ Netflix, Spotify, LinkedIn, Amazon๊ณผ ๊ฐ์ ํ์ฌ๋ค์์ ์ฌ์ฉ๋ฉ๋๋ค. ๋ฟ๋ง์๋๋ผ ์ธ๋์ ์๋ฐ ๊ฐ๋ฐ์๋ค์ ํ๊ท ์ฐ๋ด์ ์ด๋ง๋ฌด์ํฉ๋๋ค. ์ค๋ ์ธ์์ด ์ง๋ ์ง๊ธ๋ ์ฌ์ ํ ๋ค๋ฅธ ์ด๋ค ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ณด๋ค ์์๊ฐ ๋ง๊ณ ๋ง์ ์ฃผ๋์ด๋ค์ด ์๋ฐ๋ฅผ ๋จผ์ ๋ฐฐ์ฐ๊ธธ ์ํ๊ฑฐ๋ ์๊ตฌ๋ฐ๊ณ ์์ต๋๋ค. 5๏ธโฃ ๋น์ ์๊ฒ ํ๋ก๊ทธ๋๋จธ์ฒ๋ผ ์๊ฐํ๋ ๋ฐฉ๋ฒ์ ์๋ ค์ค๋ค. ๋๋ถ๋ถ์ ํ๋ก๊ทธ๋๋จธ๋ค์ด ์๋ฐ๋ก ์์ํ๋ ๋ฐ๋ ์ด์ ๊ฐ ์์ต๋๋ค. ๋ฌธ๋ฒ์ ์ด๋ ต์ง๋ง, ํ์๋ค์๊ฒ ํ๋ก๊ทธ๋๋จธ์ฒ๋ผ ์๊ฐํ๋๋ก ๊ฐ๋ฅด์นฉ๋๋ค. ๋ค์ ๋งํด, ํ์๋ค์ด ๋ ์ด๋ ค์ด ์ธ์ด๋ฅผ ๋ฐฐ์ธ ๋์๋ ํ์ํ ๋ฌธ์ ํด๊ฒฐ ๋ฅ๋ ฅ์ ๊ฐ๋ฅด์นฉ๋๋ค. 6๏ธโฃ ๋์ ์ด๋ค. ์๋ ค์ง์ง ์์ ์๋ฐ์ ํฅ๋ฏธ๋ก์ด ์ฌ์ค ์ค ํ๋๋ ๋์ ์ธ ํน์ฑ์ ๋๋ค. Java reflection๊ณผ instrumentations์ ์ฌ์ฉํ๋ฉด ํด๋์ค์ ๊ฐ์ธ ๋ณ์๋ฅผ ๋ณผ ์ ์์ผ๋ฉฐ, ์ด๋ฏธ ์ปดํ์ผ๋ ํด๋์ค๋ฅผ ์์ ํ ์๋ ์์ต๋๋ค. 7๏ธโฃ ๋ ํนํ ๊ธฐ๋ฅ. ์๋ฐ๋ ๊ฒฝ์์๊ณผ ์ฐจ๋ณํ๋๋ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ ๋ช๊ฐ์ง๋ฅผ ํฌํจํฉ๋๋ค. ์์ ํ๊ณ ์ ๋ขฐํ ์ ์๋ ์ฝ๋๋ฅผ ๋ณด์ฅํ๊ธฐ ์ํ ๋ช ๊ฐ์ง ์์ ์ฅ์น๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋ํ, ์์คํ ์ถฉ๋์ ๋ฐฉ์งํ๊ธฐ ์ํด ๋ ผ๋ฆฌ์ ์ค๋ฅ์ ๋ํ ์์ธ ์ฒ๋ฆฌ๋ฅผ ์ ๊ณตํฉ๋๋ค. 8๏ธโฃ ๋ง์ค์ฝํธ์ ์ด๋ฆ์ "Duke" ์๋ฐ ๋ง์ค์ฝํธ๊ฐ ์๋ค๋ ์ฌ์ค์ ์์๋์? ํน์ ์ํ "์๋ "์ ๋ณด์ จ๋ค๋ฉด, Joe Palrang์ ์ํ์ ๋ณด์ ๊ฒ๋๋ค. ๊ทธ๋ฌ๋ ํน์๋ ๊ทธ๊ฐ ์๋ ๋ณด๋ค๋ "Duke"๋ก ๋ ์ ๋ช ํ๋ค๊ณ ์ฃผ์ฅํฉ๋๋ค. ์ด ๋ง์ค์ฝํธ๋ ์๋ฐ ์ปจํผ๋ฐ์ค์์ ๋์ ๋๊ฒ ํ์๋๊ธฐ๋ ํฉ๋๋ค. 9๏ธโฃ ๋ชจ๋ ๊ฒ์ด ์ฐ์ฐ์ด์์์. ์ด์ ์ James Gosling์ ๋ค์ด๋ฐ ์ผํ๋ฅผ ์๊ธฐํ๋๋ฐ, ์ฐ์ฐํ ์ธ์ด๋ฅผ ๋ง๋ค์๋ค๋ ๊ฒ์ด ๋ ํฅ๋ฏธ๋กญ์ต๋๋ค. James Gosling๊ณผ ๊ทธ์ ํ์ C++์ ์ ๋ฆฌํ๋ฉด์ ์์ ํ ์๋ก์ด ์ธ์ด๋ฅผ ๋ง๋ค์์ต๋๋ค! ๐ ๋ค์ํ ์๋ฐ ํ๋ซํผ. - Java Standard Edition: ๊ธฐ๋ณธ ๊ธฐ๋ฅ๊ณผ ๋ผ์ด๋ธ๋ฌ๋ฆฌ - Java Enterprise Edition: ๋๊ธฐ์ ์ด ์ฑ ๊ตฌ์ถ์ ํ๋๋ฐ ํ์ํ ๋ชจ๋ ํ๋ ์์ํฌ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ - Java Micro Edition: ๋ชจ๋ฐ์ผ ์ฅ์น์ฉ ์ฑ์ ๊ฐ๋ฐํ๊ธฐ ์ํ ํ๋ ์์ํฌ ๋ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ - Java FX: ๊ทธ๋ํฝ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๐ฃ ์ด ๋ด์ฉ์ ์ต๋ํ๊ณ , ์น๊ตฌ๋ ๋๋ฃ๋ค์๊ฒ ๋ฉ์ง ์ง์์ ๋ฝ๋ด๋ณด์ธ์!