์์๋ค์ํผ ์ฝ๋ฉ ์ด๋ณด์๋ Java๋ก ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ํ์ต์ ์์ํ๋ ๊ฒ์ด ์ข์ต๋๋ค. CodeGym์ ๊ฐ์ฅ ์ค๋น๋์ง ์์ ํ์๋ Java ํ์ต ํ๋ก์ธ์ค๋ฅผ ์ํํ ์ ์๋๋ก ๋ชจ๋ ๊ฒ์ ๊ฐ์ถ๊ณ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ฒ์ํ ์์, ์ฌ์ด ์ด์ผ๊ธฐ ๋ฐ ์ฌ๋ฏธ์๋ ์บ๋ฆญํฐ๊ฐ ์ด ๊ณผ์ ์ ์ฝ๊ฒ ํ๋ ๋ฐ ๋์์ด ๋๋ฏ๋ก ๋๋ถ๋ถ์ ์๋ก์ด ํ์ต์๊ฐ Java์ ๊ธฐ์ด๋ฅผ ์ต๋ํ ํ์ตํ๋ ๋ฐ ์ด๋ ค์ ์์ด ์งํ๋๋ ๊ฒฝ์ฐ๋ ๊ฑฐ์ ์์ต๋๋ค.
์ค๋ ์ฐ๋ฆฌ๋ Java ํ๋ก๊ทธ๋๋ฐ ๊ธฐ์ด์์ ๊ฐ์ฅ ์ด๋ ค์ด ์์ญ ์ค ์ผ๋ถ๋ฅผ ์ดํด๋ณด๊ณ ๋ง์ ์ฌ๋๋ค์ด ์ด๋ฅผ ์ด๋ ต๋ค๊ณ ์๊ฐํ๋ ์ด์ ์ ๊ทธ์ ๋ํด ํ ์ ์๋ ์ผ์ด ์๋์ง ์์๋ณด๋ ค๊ณ ํฉ๋๋ค.
1. ์ ๋ค๋ฆญ
Java์ ์ ๋ค๋ฆญ์ ๋งค๊ฐ ๋ณ์๊ฐ ์๋ ํ์์
๋๋ค. ์ ๋ค๋ฆญ ์ ํ์ ๋ง๋ค ๋ ์ ํ๋ฟ๋ง ์๋๋ผ ์๋ํ ๋ฐ์ดํฐ ์ ํ๋ ์ง์ ํฉ๋๋ค. ์ ๋ค๋ฆญ์ Java ํ์ต์๊ฐ ์ดํดํ๊ธฐ ๊ฐ์ฅ ์ด๋ ค์ด Java ๋ถ๋ถ ์ค ํ๋๋ก ์์ฃผ ์ธ๊ธ๋ฉ๋๋ค. โ๋์ ์ฃผ์ ๋ฌธ์ ๋ ์ฌ์ ํ ์ ๋ค๋ฆญ์ ๋ค๋ฃจ๋ ๊ฒ์
๋๋ค. ๋ฐ๋ผ์ผ ํ ๋งค๊ฐ ๋ณ์๊ฐ ์๋ ๋ฉ์๋๊ฐ ์์ผ๋ฉด ํจ์ฌ ์ฝ์ง๋ง ์ง์ ์์ฑํด์ผ ํ ๋๋ ํผ๋์ค๋ฌ์์ง๋๋ค.โ๋ผ๊ณ ์ต๋ช
์ Java ํ์ต์๊ฐ ๋งํ์ต๋๋ค.
ํ ๋ฐ ๊ถ์ฅ ์ฌํญ
์๋ จ๋ ํ๋ก๊ทธ๋๋จธ์ด์ ๋ํ ๊ต์์ธ Ravi Reddy๊ฐ Java์ Generics์ ๋ํด ๋ค์๊ณผ ๊ฐ์ด
์ค๋ช
ํฉ๋๋ค. โJava Generics๋ C++ ํ
ํ๋ฆฟ์ด ํ์ง ์๋ ํ ๊ฐ์ง ๊ธฐ๋ฅ์ ์ํํฉ๋๋ค. C++ ํ
ํ๋ฆฟ์ ๊ตฌํ์ ๊ฐ๋จํ ์ ์ฒ๋ฆฌ๊ธฐ ํธ๋ฆญ์ด๋ฉฐ ํ์ ์์ ์ ๋ณด์ฅํ์ง ์์ต๋๋ค. Java์ ์ ๋ค๋ฆญ์ C++ ํ
ํ๋ฆฟ๊ณผ ๋น์ทํ์ง๋ง ์ถ๊ฐ ํ์ ์์ ์ฑ์ด ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ IMHO, ์ ํ ์์ ์ ์ข์ ๊ฐ๋ฐ ํ๊ฒฝ์ ํ์ ๊ธฐ๋ฅ์
๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ค! ๋งค๊ฐ๋ณ์์ ์ ํ ์ฌ์ด์ ์ ์ ์ ๋ณํ ๋๋ฌธ์ ํผ๋์ค๋ฌ์ธ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๋๋ ๊ทธ๊ฒ๋ค์ ๋ง์คํฐํ๊ธฐ ์ํด ์๊ฐ์ ๋ณด๋ด๋ ๊ฒ์ด ๋
ธ๋ ฅํ ๊ฐ์น๊ฐ ์๋ค๊ณ ๋ฏฟ์ต๋๋ค. ์ธํฐํ์ด์ค์ ์ ๋ค๋ฆญ์ ์ดํดํ๊ณ ๋๋ฉด Java์์ ํจ์ฌ ๋ ์ "์๊ฐ"ํ ์ ์๋ค๋ ๊ฒ์ ์๊ฒ ๋์๊ธฐ ๋๋ฌธ์
๋๋ค."
2. ๋ฉํฐ์ค๋ ๋ฉ
Java์ ๋ฉํฐ์ค๋ ๋ฉ์ ์์ฉ ํ๋ก๊ทธ๋จ์์ CPU๋ฅผ ์ต๋ํ ํ์ฉํ๊ธฐ ์ํด ๋ ์ด์์ ์ค๋ ๋๋ฅผ ๋์์ ์คํํ๋ ํ๋ก์ธ์ค์
๋๋ค. ๋ฉํฐ์ค๋ ๋ฉ์ ๋งค์ฐ ์ค์ํ ์์
์ ํด๊ฒฐํ๊ณ ํ๋ก๊ทธ๋จ์ ๋ ๋น ๋ฅด๊ฒ ๋ง๋ค ์ ์์ต๋๋ค. ์ข
์ข
๋ช ๋ฐฐ ๋ ๋น ๋ฆ
๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๊ฒ์ ๋ง์ ์๋ก์ด Java ํ์ต์๊ฐ ๋งํ๋ ๊ฒฝํฅ์ด ์๋ ์ฃผ์ ์ค ํ๋๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. ๋ค์ค ์ค๋ ๋ฉ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋์ ๋ฌธ์ ๋ฅผ ์์ฑํ ์ ์๊ธฐ ๋๋ฌธ์
๋๋ค. ๋ค์ค ์ค๋ ๋ฉ์ด ์์ฑํ ์ ์๋ ๋ ๊ฐ์ง ํน์ ๋ฌธ์ ๋ ๊ต์ฐฉ ์ํ์ ๊ฒฝํฉ ์ํ์
๋๋ค. ๊ต์ฐฉ ์ํ๋ ์ฌ๋ฌ ์ค๋ ๋๊ฐ ์๋ก ๋ณด์ ํ๊ณ ์๋ ๋ฆฌ์์ค๋ฅผ ๊ธฐ๋ค๋ฆฌ๊ณ ์๊ณ ๊ทธ ์ค ์ด๋ ๊ฒ๋ ๊ณ์ ์คํํ ์ ์๋ ์ํฉ์
๋๋ค. ๊ฒฝ์ ์กฐ๊ฑด์ ๋ฉํฐ์ค๋ ๋ ์์คํ
๋๋ ์์ฉ ํ๋ก๊ทธ๋จ์ ์ค๊ณ ์ค๋ฅ๋ก, ์์คํ
๋๋ ์์ฉ ํ๋ก๊ทธ๋จ์ ์๋์ ์ฝ๋ ๋ถ๋ถ์ด ์คํ๋๋ ์์์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค.
ํ ๋ฐ ๊ถ์ฅ ์ฌํญ
์ฌ๊ธฐ ์ข์
์ถ์ฒ ์
๋๋ค์ธ๊ธฐ ์๋ Q&A ์น์ฌ์ดํธ์ธ StackExchange์ ์ํํธ์จ์ด ์ํคํ
ํธ์ด์ ์ ๊ทน์ ์ธ ์ฌ์ฉ์์ธ S.Lott๊ฐ ๋ฉํฐ์ค๋ ๋ฉ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๋ค์๊ณผ ๊ฐ์ด ๋งํ์ต๋๋ค. โ๋ฉํฐ์ค๋ ๋ฉ์ ๊ฐ๋จํฉ๋๋ค. ๋ฉํฐ์ค๋ ๋ฉ์ ์ํ ์ ํ๋ฆฌ์ผ์ด์
์ฝ๋ฉ์ ๋งค์ฐ ์ฝ์ต๋๋ค. ๊ฐ๋จํ ์๋ น์ด ์๋๋ฐ, ์ด๊ฒ์ ์ ์ค๊ณ๋ ๋ฉ์์ง ํ๋ฅผ ์ฌ์ฉํ์ฌ ์ค๋ ๋ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ ๊ฒ์
๋๋ค. ์ด๋ ค์ด ๋ถ๋ถ์ ์ฌ๋ฌ ์ค๋ ๋๊ฐ ์ด๋ค ๋ฐฉ์์ผ๋ก๋ ๊ณต์ ๊ฐ์ฒด๋ฅผ ๋ง์ ์ฒ๋ผ ์
๋ฐ์ดํธํ๋๋ก ํ๋ ๊ฒ์
๋๋ค. ์ฌ๋๋ค์ด ์กด์ฌํ๋ ๊ฒฝ์ ์กฐ๊ฑด์ ์ฃผ์๋ฅผ ๊ธฐ์ธ์ด์ง ์๊ธฐ ๋๋ฌธ์ ์ค๋ฅ๊ฐ ๋ฐ์ํ๊ธฐ ์ฌ์ด ๋์
๋๋ค. ๋ง์ ์ฌ๋๋ค์ด ๋ฉ์์ง ๋๊ธฐ์ด์ ์ฌ์ฉํ์ง ์๊ณ ๊ณต์ ๊ฐ์ฒด๋ฅผ ์
๋ฐ์ดํธํ๋ ค๊ณ ์๋ํ๊ณ ์ค์ค๋ก ๋ฌธ์ ๋ฅผ ๋ง๋ญ๋๋ค. ์ด๋ ค์์ง๋ ๊ฒ์ ์ฌ๋ฌ ๋๊ธฐ์ด ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ ๋ ์ ์๋ํ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ค๊ณํ๋ ๊ฒ์
๋๋ค. ์ด๋ ต์ต๋๋ค.
3. ํด๋์คํจ์ค ๋ฌธ์
ํด๋์ค ๊ฒฝ๋ก ์ค๋ฅ๋ ๋ํ Java ๊ฐ๋ฐ์๊ฐ ์ผ์ ์
๋ฌด์์ ์ง๋ฉดํ๋ ๊ฐ์ฅ ๋ถ๋ง์ด ๋ง์ ๋ฌธ์ ์ค ํ๋๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. โํด๋์ค ๊ฒฝ๋ก ๋ฌธ์ ๋ ๋๋ฒ๊ทธํ๋ ๋ฐ ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆด ์ ์์ผ๋ฉฐ ์ต์
์ ์๊ฐ๊ณผ ์ฅ์์์ ๋ฐ์ํ๋ ๊ฒฝํฅ์ด ์์ต๋๋ค. ๋ฆด๋ฆฌ์ค ์ , ๊ฐ๋ฐ ํ์ด ๊ฑฐ์ ๋๋ ์ ํ ์ก์ธ์คํ ์ ์๋ ํ๊ฒฝ์์ ์์ฃผ ๋ฐ์ํฉ๋๋ค. ๋ํ IDE ์์ค์์ ๋ฐ์ํ ์ ์์ผ๋ฉฐ ์์ฐ์ฑ ์ ํ์ ์์ธ์ด ๋ ์ ์์ต๋๋ค.โ๋ผ๊ณ ์๋ จ๋ Java/Javascript ๊ฐ๋ฐ์์ด์ ํ๋ก๊ทธ๋๋ฐ ๊ด๋ จ ์์ต์ ์์ฑ์์ธ Vasco Ferreira๋
๋งํฉ๋๋ค .
ํ ๋ฐ ๊ถ์ฅ ์ฌํญ
โํด๋์คํจ์ค ๋ฌธ์ ๋ ์ธ๋ป ๋ณด๊ธฐ์ ๊ทธ๋ ๊ฒ ๋ฎ์ ์์ค์ด๊ฑฐ๋ ์ ๊ทผํ๊ธฐ ์ด๋ ค์ด ๋ฌธ์ ๊ฐ ์๋๋๋ค. ํน์ ๋๋ ํฐ๋ฆฌ์ ์กด์ฌ/์กด์ฌํ์ง ์๋ zip ํ์ผ(jar), ํด๋น ๋๋ ํฐ๋ฆฌ๋ฅผ ์ฐพ๋ ๋ฐฉ๋ฒ, ์ก์ธ์ค๊ฐ ์ ํ๋ ํ๊ฒฝ์์ ํด๋์ค ๊ฒฝ๋ก๋ฅผ ๋๋ฒ๊น
ํ๋ ๋ฐฉ๋ฒ์ ๊ดํ ๊ฒ์
๋๋ค. ํด๋์ค ๋ก๋, ํด๋์ค ๋ก๋ ์ฒด์ธ, ์์ ์ฐ์ /์์ ์ต์ข
๋ชจ๋์ ๊ฐ์ ์ ํ๋ ๊ฐ๋
์งํฉ์ ์๋ฉด ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ํด๊ฒฐํ ์ ์์ต๋๋ค.โ๋ผ๊ณ ์ ๋ฌธ๊ฐ๋ ์ค๋ช
ํฉ๋๋ค.
4. ๋คํ์ฑ๊ณผ ์ฌ๋ฐ๋ฅธ ์ฌ์ฉ
OOP์ ์๋ฆฌ์ ๊ดํด์๋ ๋ง์ ์ฌ๋๋ค์ด ๋คํ์ฑ์ ์ดํดํ๋ ๋ฐ ์ด๋ ค์์ ๊ฒช์๋ค๊ณ ๋งํฉ๋๋ค. ๋คํ์ฑ์ ๊ฐ์ฒด์ ํน์ ์ ํ์ ๋ํ ์ ๋ณด ์์ด ๋์ผํ ์ธํฐํ์ด์ค๋ฅผ ๊ฐ์ง ๊ฐ์ฒด๋ฅผ ๋์ผํ ๋ฐฉ์์ผ๋ก ์ฒ๋ฆฌํ๋ ํ๋ก๊ทธ๋จ์ ๊ธฐ๋ฅ์
๋๋ค. ๋คํ์ฑ์ ๋งค์ฐ ๊ธฐ๋ณธ์ ์ธ ์ฃผ์ ์์๋ ๋ถ๊ตฌํ๊ณ ๋ค์ ๊ด๋ฒ์ํ๋ฉฐ Java ๊ธฐ๋ฐ์ ์๋น ๋ถ๋ถ์ ํ์ฑํฉ๋๋ค. ๋ง์ ํ์๋ค์๊ฒ ๋คํ์ฑ์ Java ํ์ต์ ์ฒซ ๋ฒ์งธ ์ด๋ ค์์
๋๋ค. ๋ชจ๋ ๋ค๋ฅธ ๋งฅ๋ฝ์์ ์ฌ์ฉ๋๋ ๋คํ์ฑ์ ๋ค๋ฅธ ํํ๊ฐ ์๊ธฐ ๋๋ฌธ์ ํผ๋์ค๋ฌ์ธ ์ ์์ต๋๋ค.
ํ ๋ฐ ๊ถ์ฅ ์ฌํญ
๋คํ์ฑ์ ๋ฐฐ์ฐ๋ ๊ฒ ์ธ์๋ ๋คํ์ฑ์ ๋ค๋ฃจ๋ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ์ฝํํ๊ฒ ๋ํ๊ต์์ ํ๋ก๊ทธ๋๋ฐ์ ๊ฐ๋ฅด์น๋ Torben Mogensen์ ๋ค์๊ณผ ๊ฐ์ด
์ค๋ช
ํฉ๋๋ค .์ด ๊ฐ๋
์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. โ๋จ์ ์ค๋ฒ๋ก๋ฉ: +๋ ์ ์ ์ถ๊ฐ, ๋ถ๋ ์์์ ์ถ๊ฐ ๋ฐ (์ผ๋ถ ์ธ์ด์์) ๋ฌธ์์ด ์ฐ๊ฒฐ์ ๋ชจ๋ ์๋ฏธํ ์ ์์ต๋๋ค. ํ์ ์ ํ ๋คํ์ฑ: B๊ฐ A์ ํ์ ์ ํ(์์)์ธ ๊ฒฝ์ฐ ์ ํ A์ ๊ฐ์ ๊ธฐ๋ํ๋ ์ปจํ
์คํธ์์ ์ ํ B์ ๋ชจ๋ ๊ฐ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋งค๊ฐ๋ณ์ ๋คํ์ฑ: ์ ํ ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ ์ ํ์ ๋งค๊ฐ๋ณ์ํํ ์ ์์ต๋๋ค. ๋ค๋ฅธ ์ปจํ
์คํธ๋ ๋ค๋ฅธ ํ์ ์ธ์๋ฅผ ์ ๊ณตํ ์ ์์ผ๋ฏ๋ก ๋งค๊ฐ ๋ณ์๊ฐ ์๋ ํ์์ ๋ค๋ฅธ ๊ตฌ์ฒด์ ์ธ ํ์์ผ๋ก ์ธ์คํด์คํํฉ๋๋ค. ์ด๊ฒ์ "ํ
ํ๋ฆฟ" ๋๋ "์ ๋ค๋ฆญ"์ด๋ผ๊ณ ๋ ํ๋ฉฐ ์ผ๋ฐ์ ์ผ๋ก ๊บพ์ ๊ดํธ(์: T<A>)๋ฅผ ์ฌ์ฉํ์ฌ ์ง์ ๋๋ OO ์ธ์ด๋ก ๋์ด ์์ต๋๋ค. ์ธํฐํ์ด์ค ๋คํ์ฑ. ์ด๊ฒ์ ๊ธฐ๋ณธ์ ์ผ๋ก ํ์ ์ ํ ๋คํ์ฑ์ ํน์ ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ๋ ํ์ ์ ํ์ผ๋ก ์ ํํ๊ฑฐ๋ ๋งค๊ฐ๋ณ์ ๋คํ์ฑ์ ํน์ ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ๋ ์ ํ ๋งค๊ฐ๋ณ์๋ก ์ ํํ๋ ๋ฉ์ปค๋์ฆ์
๋๋ค."
5. ๋ฐ์ฌ
๋ฆฌํ๋ ์
์ ํ๋ก๊ทธ๋จ์ด ์คํ๋๋ ๋์ ํ๋ก๊ทธ๋จ์ ๋ํ ๋ฐ์ดํฐ๋ฅผ ํ์ํ๋ ๋ฉ์ปค๋์ฆ์
๋๋ค. ๋ฆฌํ๋ ์
์ ์ฌ์ฉํ๋ฉด ํ๋, ๋ฉ์๋ ๋ฐ ํด๋์ค ์์ฑ์์ ๋ํ ์ ๋ณด๋ฅผ ํ์ํ ์ ์์ต๋๋ค. ๋ํ ์ปดํ์ผ ์๊ฐ์๋ ์์์ง๋ง ๋ฐํ์ ๋์ ์ฌ์ฉํ ์ ์๊ฒ ๋ ํ์์ผ๋ก ์์
ํ ์ ์์ต๋๋ค. ์ค๋ฅ ์ ๋ณด๋ฅผ ๋ฐํํ๊ธฐ ์ํ ๋ฐ์ ๋ฐ ๋
ผ๋ฆฌ์ ์ผ๋ก ์ผ๊ด๋ ๋ชจ๋ธ์ ํตํด ์ฌ๋ฐ๋ฅธ ๋์ ์ฝ๋๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๋ง์ ์ฌ๋๋ค์๊ฒ Reflection์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ํ์
ํ๋ ๊ฒ์ ๊ทธ๋ฆฌ ์ฌ์ด ์ผ์ด ์๋๋๋ค.
ํ ๋ฐ ๊ถ์ฅ ์ฌํญ
โ๋ฆฌํ๋ ์
๊ณผ ์๋ฐ์ ๊ฒฝ์ฐ ๋ฆฌํ๋ ์
์ ํตํด ์ ์ ์ผ๋ก ํ์
๋๋๋ก ์ค๊ณ๋ ์๋ฐ๋ฅผ ๋์ ์ผ๋ก ํ์
ํํ ์ ์๋ค. ๋์ ํ์ดํ์ ๋ณธ์ง์ ์ผ๋ก ์
ํ์ง ์์ต๋๋ค. ์, ํ๋ก๊ทธ๋๋จธ๊ฐ ํน์ OOP ์์น์ ์๋ฐํ ์ ์์ง๋ง ๋์์ ๋ฐํ์ ํ๋ก์ ๋ฐ ์ข
์์ฑ ์ฃผ์
๊ณผ ๊ฐ์ ๋ง์ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ ํ์ฉํฉ๋๋ค. ์, Java๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฆฌํ๋ ์
์ ์ฌ์ฉํ์ฌ ์์ ์ ๋ฐ์ ์ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๋งค์ฐ ๋ช
์์ ์ผ๋ก ๋ฐ์ ์ด์ ๊ฒจ๋๊ณ ์์ ์ฅ์น๋ฅผ ๋ฒ๊ณ ๋ฐฉ์์ ๋ฅผ ๋น๊ฒจ์ผ ํฉ๋๋ค.โ๋ผ๊ณ ์๋ จ๋ Java ํ๋ก๊ทธ๋๋จธ์ด์ ์ ํ๋ฆฌ์ผ์ด์
์ค๊ณ์์ธ Jayesh Lalwani๋
์ค๋ช
ํฉ๋๋ค .
6. ์
๋ ฅ/์ถ๋ ฅ ์คํธ๋ฆผ
์คํธ๋ฆผ์ ์ฌ์ฉํ๋ฉด ์ธํฐ๋ท, ์ปดํจํฐ์ ํ์ผ ์์คํ
๋ฑ ๋ชจ๋ ๋ฐ์ดํฐ ์์ค๋ก ์์
ํ ์ ์์ต๋๋ค. ์คํธ๋ฆผ์ ๋ฒ์ฉ ๋๊ตฌ์
๋๋ค. ์ด๋ฅผ ํตํด ํ๋ก๊ทธ๋จ์ ์ด๋์์๋ ๋ฐ์ดํฐ๋ฅผ ์์ ํ๊ณ (์
๋ ฅ ์คํธ๋ฆผ) ์ด๋๋ก๋ ๋ณด๋ผ ์ ์์ต๋๋ค(์ถ๋ ฅ ์คํธ๋ฆผ). ๊ทธ๋ค์ ์๋ฌด๋ ๋์ผํฉ๋๋ค. ํ ๊ณณ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ ๋ค๋ฅธ ๊ณณ์ผ๋ก ๋ณด๋ด๋ ๊ฒ์
๋๋ค. ์คํธ๋ฆผ์๋ ์
๋ ฅ ์คํธ๋ฆผ(๋ฐ์ดํฐ ์์ ์ ์ฌ์ฉ๋จ)๊ณผ ์ถ๋ ฅ ์คํธ๋ฆผ(๋ฐ์ดํฐ ์ ์ก์ ์ฌ์ฉ๋จ)์ ๋ ๊ฐ์ง ์ ํ์ด ์์ต๋๋ค. ๋ง์ ์ฌ๋๋ค์ด ์คํธ๋ฆผ ์ฌ์ฉ์ ์ดํดํ๊ธฐ ์ด๋ ต๊ฒ ๋ง๋๋ ๊ฒ์ Java์ ์ฌ๋ฌ I/O ์คํธ๋ฆผ ํด๋์ค๊ฐ ์๋ค๋ ์ฌ์ค์
๋๋ค.
ํ ๋ฐ ๊ถ์ฅ ์ฌํญ
โJava์๋ ์ฃผ๋ก ๋ ๊ฐ์ง ์์ธ์ผ๋ก ์ธํด ๋ง์ I/O ์คํธ๋ฆผ ํด๋์ค๊ฐ ์์ต๋๋ค. ๋จผ์ ์ ์ฐ์
๋๋ค. ์ผ๋ถ ํด๋์ค๋ ์ญ์ฌ์ ์ธ ์ด์ ๋ก ์ฌ์ ํ ์กด์ฌํ๋ฉฐ ์ ํดํ ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋์ง ์์ผ๋ฏ๋ก ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ต๋๋ค. ๋์งธ, ์ ์ฐ์ฑ. ์์ฉ ํ๋ก๊ทธ๋จ๋ง๋ค ์๊ตฌ ์ฌํญ์ด ๋ค๋ฅด๋ฏ๋ก ์๊ตฌ ์ฌํญ์ ๋ฐ๋ผ ์ฌ๋ฌ ์ต์
์ด ์์ต๋๋ค. ์ ์ฉํ ์ถ์ํ๋ ์ฝ์ ๋ ๋ช
ํ์ฑ์ ์ ๊ณตํ๋ฉฐ ๋ช ์ค์ ์ฝ๋๋ก ๋ง์ ์์
์ ์ํํ ์ ์์ต๋๋ค.โ๋ผ๊ณ ์ค์จ๋ด์ Java ์ ๋ฌธ๊ฐ์ธ Jonas Mellin์
๋งํฉ๋๋ค . Java์ ์ด๋ค ์ธก๋ฉด์ด ๊ฐ์ฅ ์ดํดํ๊ธฐ ์ด๋ ค์ ๊ฑฐ๋ ํ ๋์ ๊ณ ์ฐฉ๋์ด ์์์ต๋๊น? ์๊ฒฌ์ ๊ฒฝํ์ ๊ณต์ ํ์ญ์์ค.