๋ชจ๋ ์ํํธ์จ์ด ๊ฐ๋ฐ์๊ฐ ํผํด์ผ ํ 9๊ฐ์ง ์ง์
์์ ์ค์
์ถ์ฒ:
Infoworld ์์งํ๊ฒ ๋ง์๋๋ฆฌ๊ฒ ์ต๋๋ค. ์ฌ๋ฌ๋ถ ์ค ์ผ๋ถ๋ ์์ ์ด๋ ๋ถ๋ชจ๋์ด ๋์ ๋ง์ด ๋ฒ๋ ๊ฒ์ด ๋ ์ฌ์ธ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ๊ธฐ ๋๋ฌธ์ ํ๋ก๊ทธ๋๋ฐ์ ๋ฐฐ์ฐ๊ธฐ ์์ํ์ต๋๋ค. ๋น์ ์ ํ๊ต์์ ์ปดํจํฐ๋ฅผ ๋ณ๋ก ์ข์ํ์ง๋ ์์๊ณ , ์ํํธ์จ์ด ๊ฐ๋ฐ์ ๋ณ๋ก ์ข์ํ์ง๋ ์์์ต๋๋ค. ์ด๊ฒ์ด ์ฌ์ค์ด๋ผ๋ฉด ์ด๋ ๋น์ ์ด ํญ์ ํ๋ฒํ ํ๋ก๊ทธ๋๋จธ๊ฐ ๋ ๊ฒ์์ ์๋ฏธํฉ๋๋ค. ์, ์ฐ๋ฆฌ ์
๊ณ๊ฐ ์ ํธํ๊ธฐ ๋๋ฌธ์ ๋น์ ์ ์ข์ ๋์ ๋ฒ ์ ์์ง๋ง ์ด ๊ธฐ์ฌ๋ ๋น์ ์ ์ํ ๊ฒ์ด ์๋๋๋ค. ํ์ง๋ง ์ด๋ ธ์ ๋ ์ ์ ์ ํ์ด ์ด๋ป๊ฒ ์๋ํ๋์ง ์์๋ด๊ธฐ ์ํด ๋ถํดํ๋ค๋ ์ด์ ๋ก ์ฒ๋ฒ์ ๋ฐ์๋ค๋ฉด... ๋น๋์ค ๊ฒ์์ ๋ง๋๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ฐ๊ธฐ ์ํด ์ธํฐ๋ท์์ ๋ฐ๋์ ์ ๋ณด๋๋ค๋ฉด... ๊ท์คํ ์์ ์๊ฐ์ ๋ฌด์์ ๋ํด ๋ฐฐ์ฐ๋ ๋ฐ ๋ณด๋๋ค๋ฉด? ์๋ฌด๋ ๋น์ ์๊ฒ ๋ฌป์ง ์์์ต๋๋ค... ์ด ๊ธ์ ๋น์ ์ ์ํ ๊ฒ์
๋๋ค. ์ง๋ก์ ๋ํ ์ธ์์ ๋ฐ๊ฟ์ผ ํฉ๋๋ค. ๋ ์ด์ ์ฌ๋ฏธ๋ก ์ฝ๋๋ฅผ ์์ฑํ์ง ์์ต๋๋ค. ๋์ ์ํด ์ฝ๋๋ฅผ ์์ฑํฉ๋๋ค. ์ฌ๋ฏธ๋ก ๊ฐ์ธ ํ๋ก์ ํธ๋ฅผ ์ง์ํ ์ ์์ต๋๋ค. ํ์ง๋ง ์ ์ด๋ ํ๋ฃจ ์ผ๊ณผ๋ฅผ ์ฆ๊ฒ๊ฒ ๋ณด๋ด์๊ธฐ ๋ฐ๋๋๋ค. ๊ทธ๋ ์ง ์๋ค๋ฉด ๊ฐ๋ฅํ๋ฉด ๋ ๋์ ๊ณณ์ ์ฐพ์ผ์ญ์์ค. ๋น์ ์ ๋ชฉํ๋ ์ํด ๊ธฐ๊ธ์ ๊ฐ์คํ๊ณ , ์ธํ ์๊ธ์ ๋ชจ๋ ์ฌ๊ธฐ์ ๋ฃ๊ณ , ์ง๊ณผ ์๋์ฐจ๋ฅผ ๊ตฌ์
ํ๊ณ , ์ํ๋ ์ผ์ ํ๋ ๊ฒ์ด์ด์ผ ํฉ๋๋ค. ์ด์ฉ๋ฉด ์ฌํ. ๋์์ ํ์ฌ ์ง์
๋ฟ๋ง ์๋๋ผ ๊ฒฝ๋ ฅ์ ๋ํด์๋ ์๊ฐํด์ผ ํฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ ค๋ฉด 9๊ฐ์ง ํจ์ ์ ํผํด์ผ ํฉ๋๋ค. ์ด์ ์ด์ ๋ํด ๋
ผ์ํ๊ฒ ์ต๋๋ค.
ํจ์ #1: ํ ๊ธฐ์ ์ ๋๋ฌด ์ค๋ซ๋์ ๋จธ๋ฌผ์ง ๋ง์ธ์
์ดํดํฉ๋๋ค. C#์ด๋ Java, JavaScript, Python ๋๋ Cobol์ ์ข์ํ์๋์? ๊ทธ๋ฌ๋ ๋๋ถ๋ถ์ ๊ธฐ์ ์๋ ์ฑํ, ํผํฌ, ์์์์ฑ, ํ์ ์์ฅ ๋ฐ ๋
ธํํ์ ์๋ช
์ฃผ๊ธฐ๊ฐ ์์ต๋๋ค. ๋ด ๋ง์, ๋น์ ์ด 1980๋
๋์ Cobol์ ์์๋ค๋ฉด ์ ๋ง ๋ฉ์ก์ ๊ฒ์
๋๋ค. ํ์ง๋ง ์์ฆ Cobol ํ๋ก๊ทธ๋๋จธ๋ค์ ๋์ ๋ง์ด ๋ฒ์ง ๋ชปํฉ๋๋ค. ์ฆ, ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ํ๋๋ง ์๋ฉด ์กฐ๋ง๊ฐ ๋น์ฉ์ ์ ๊ฐํ๊ณ ์์
์ด ์ค์ด๋ค๊ธฐ ๋๋ฌธ์ ๋ ์ ๋ ดํ ๋์๋ก ์ด์ฌํด์ผ ํ๋ค๋ ๊ฒ์ด ์์ ์
๋๋ค.
ํจ์ 2๋ฒ: IT ๋
์ ์๊ฐ ๋์ง ๋ง์ธ์
ํฌ์๋ฅผ ํค์งํด์ผ ํฉ๋๋ค. ํ์ฌ ์์ฅ์ ์ง๋ฐฐํ๊ณ ์๋ ๊ธฐ์ ์ ์ ๋ฌธ๊ฐ๊ฐ ๋๊ธฐ๋ง ํ๋ฉด ๋๋ ๊ฒ์ฒ๋ผ ๋ณด์ผ ์๋ ์์ต๋๋ค. ํ์ง๋ง ๊ทธ๋ฌ๋ฉด ๋ง์ ๊ฒฝ์์ ์ง๋ฉดํ๊ฒ ๋ ๊ฒ์
๋๋ค. ๋ํ ์ ๋ฌธ ๋ถ์ผ์ ๋ํ ์์๊ฐ ๊ฐ์ํ๋ ๊ฒฝ์ฐ ์ด๋ฏธ ์ข
๋ฃ ๊ณํ์ ๋ง๋ จํด์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, Java๊ฐ ๋์์ ๋ ๋๋ C++ ๊ดด์ง์์ต๋๋ค. ๋๋ ์๋ฐ๋ฅผ ๋ฐฐ์ ๋ค. ๋ช ๋
์ , ๋ชจ๋ ์ฌ๋๋ค์ Ruby๋ฅผ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ๋ถ์ผ์ ์๋ก์ด ๋ ์ค๋ฅด๋ ์คํ๋ก ์ด์ผ๊ธฐํ๊ธฐ ์์ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ ์์ ์์๋ Perl์ด Java์ ๊ฐ์ ์์ค์ ๋๋ฌํ ๊ฒ์ฒ๋ผ ๋ณด์์ต๋๋ค. ๋ฏธ๋๋ฅผ ์์ธกํ๋ ๊ฒ์ ์ด๋ ต๊ธฐ ๋๋ฌธ์ ์ํ์ ํํผํ๋ ๊ฒ์ด ์ทจ์
์์ฅ์์์ ํ๋น์ฑ์ ๋ณด์ฅํ๋ ๊ฐ์ฅ ์์ ํ ๋ฐฉ๋ฒ์
๋๋ค.
ํจ์ #3: ์ ํ์ ์ฝ๋งค์ด์ง ๋ง์ธ์
์กฐ๋ง๊ฐ ๋ง๋ฒ์ด ์ฌ๋ผ์ง๋๋ค. ์ฌ๋๋ค์ Groovy๋ Ruby ๊ฐ๋ฐ์๋ฅผ ๊ณ ์ฉํ์ง ์์ ๊ฒ์
๋๋ค. ์์ฌ๊ฐ ํ๋ก์ ํธ์์ ๋ ๊ฑฐ์ ์ธ์ด๋ฅผ ์ฌ์ฉํ๋๋ก ํ์ฉํ๋ค๋ฉด ์ด๋ ๊ทธ๊ฐ ์ ๊ฒฝ ์ฐ์ง ์๊ฑฐ๋ ๋จ์ํ ๋ฌด์งํ๊ธฐ ๋๋ฌธ์ผ ๊ฒ์
๋๋ค. ๊ผญ ์ต์ ๊ธฐ์ ์ ๋ฐฐ์ฐ๊ณ ์ฌ์ฉํด ๋ณด์ธ์. ์ด์ ๋ํด ๊ฐ์ฅ ๋จผ์ ์๊ณ ์ ๋ฌธ๊ฐ๊ฐ ๋ ์ค๋น๋ฅผ ํ์ญ์์ค. ๋ฐ๋ฉด์, ์ ๋ฌธ ๋ถ์ผ์ ๋ํ ์์๊ฐ ๊ฐ์ํ ๊ฒฝ์ฐ ๊ธ๊ฒฉํ ๋ณํ๋ฅผ ์ค๋นํ ์๋ ์์ต๋๋ค. ์ธ์ด๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ฌ๋์ ๋น ์ง ๋ค๋ฅธ ์ ๊ธฐ์ ์ ํญ์ ์์ต๋๋ค.
ํจ์ #4: ๊ท์น์ ๋ํ ์๋ ๋ฅด๊ธฐ
๋ชจ๋ ์กฐ์ง์๋ ๊ท๋ชจ์ ์๊ด์์ด ๊ณ ์ ํ ์ฌ๋ฌด์ค ๊ท์น์ด ์์ต๋๋ค. ๋น์ ์ ๊ทธ๊ฒ๋ค์ ์ฐ๊ตฌํ๊ณ ๋ฐ๋ผ์ผ ํ ๊ฒ์
๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ๋ค๋ฅธ ์ฌ๋์ ๊ฒ์์์ ๋ณผ๋ชจ๊ฐ ๋๊ฑฐ๋ ํ์์ ๊ณ ๋ฆฝ๋๋ ์์ ์ ๋ฐ๊ฒฌํ๊ฒ ๋ ๊ฒ์
๋๋ค. ์ง์ฅ์์์ ๊ฒฝ๋ ฅ๊ณผ ์์ฐ์ ์ธ ๊ด๊ณ์ ๊ด์ฌ์ด ์๋ค๋ฉด ์ฌ๋ฌด์ค ๊ท์น์์
๋ฐฉ์ด ์ ์ ์ ๋ฐ๋ฅด๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ฐ์ญ์์ค.
ํจ์ #5: ์ฌ์
์ ๋ํ ๋ฌด๊ด์ฌ
"์ ๋ ๊ฐ๋ฐ์์ผ ๋ฟ ์ฌ์
์๋ ๊ด์ฌ์ด ์์ต๋๋ค." ์ด๊ฒ์ ์๋ฌด๋ฐ๋ ๊ฐ ์ ์๋ ๊ธธ์ด๋ค. ๊ณ์ฐํ๋ ๋ฒ์ ๋ฐฐ์์ผํฉ๋๋ค. ๋น์ ์ ํ์ฌ๋ ์ ์ง๋ด๊ณ ์๋์? ์ฃผ์ ์ฌ์
๋ชฉํ๋ ๋ฌด์์
๋๊น? ๊ทธ๋
์ ๊ฐ์ฅ ์ค์ํ ํ๋ก์ ํธ๋ ๋ฌด์์
๋๊น? ๊ธฐ์ ์ด๋ ์ํํธ์จ์ด๊ฐ ์ด๋ฅผ ๋ฌ์ฑํ๋ ๋ฐ ์ด๋ป๊ฒ ๋์์ด ๋ฉ๋๊น? ๊ทํ์ ํ์ฌ๋ ์ ์ฒด ์ฐ์
์ ์ด๋ป๊ฒ ์ ์ํฉ๋๊น? ์ด๋ฌํ ์ง๋ฌธ์ ๋ํ ๋ต์ ๋ชจ๋ฅธ๋ค๋ฉด ์๋์ ์ผ๋ก ์ ์ ๊ธ์ก์ ๋ฐ๊ณ ์ค์ํ์ง ์์ ํ์ฌ์์ ์ค์ํ์ง ์์ ์ฌ๋๋ค์ ์ํ ์ค์ํ์ง ์์ ํ๋ก์ ํธ๋ฅผ ์ํํ๊ฒ ๋ ๊ฒ์
๋๋ค.
ํจ์ 6๋ฒ: '๋
ธ๋์กฐํฉ ์ฐ๋' ์ฌ๊ณ ๋ฐฉ์
๋ด๊ฐ ์ด๋ ธ์ ๋, ๋ด ๋๋ฃ ์ค ํ ๋ช
์ ๊ฑฐ์ ๋ชจ๋ ์ผ์ 6๊ฐ์ ์ ์ ๋ฏธ๋ฆฌ ๊ณํํ๋ ์ฌ๋์ด์์ต๋๋ค. ๊ทธ๊ฐ ํด๊ฐ๋ฅผ ๊ฐ๋ ์ค์๋ฅผ ์ ์ง๋ ๊ธฐ ๋๋ฌธ์ ๋๋ 2์ฃผ ๋ง์ ์ ์ฒด ํ๋ก์ ํธ๋ฅผ ๋๋๊ณ ๊ทธ์๊ฒ ํ ์ํ๋ง ๋จ๊ฒจ๋์์ต๋๋ค. ๋๋ ๊ทธ๊ฐ ๊ทธ๊ฒ์ ๋ํด ๊ธฐ๋ปํ ๊ฒ์ด๋ผ๊ณ ๊ธฐ๋ํ์ต๋๋ค. ๊ทธ๋ ํ๋ณตํ์ง ์์ ๊ฒ์ผ๋ก ๋ฐํ์ก์ต๋๋ค. ๊ทธ๊ฐ ๋๋ฅผ ํด๊ณ ํ๊ธฐ ์ํด ๋ชจ๋ ๊ธฐํ๋ฅผ ์ด์ฉํ๋ฉด์ ๋ชจ๋ ๊ฒ์ด ๋๋ฌ์ต๋๋ค. ์ด๊ฒ์ด ๊ทธ์ ์ฃผ์ ๋ชฉํ๊ฐ๋์์ต๋๋ค. ๊ทธ๋ ์ฌ์ง์ด ์ ์ด์ฌ์๊ฒ ๋์ ๋ํด ๋ถํ๊น์ง ํ์ต๋๋ค. ๋ฌผ๋ก ๋๋ ํ ์ผ์ ๋ค ํ๋ค. ๋๋ ํ์ ๊ฐ์์ต๋๋ค. ์ ๋ ํญ์ ์ผ์ ๋ ์ํ๊ณ ๋ ๋น ๋ฅด๊ฒ ์ฒ๋ฆฌํ๊ณ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ์๋ก์ด ๋ฐฉ๋ฒ์ ์ฐพ๊ณ ์์์ต๋๋ค. ๋ด๊ฐ ๋ค๋ฅธ ์ง์ฅ์ผ๋ก ๋ ๋ ์งํ์ ๊ทธ๋ ์ํดํ์ต๋๋ค. ์นดํ์์ ๊ทธ ์ฌ๋์ ๋ช ๋ฒ ๋ดค๋๋ฐ, ์ฐ๋ฆฌ๋ ์๋ก ๋ชจ๋ฅด๋ ์ฒ ํ์ด์. "์ฒ์ฒํ ํ์ธ์. ๊ทธ๋ ์ง ์์ผ๋ฉด ์ํฉ์ด ๋ ๋๋น ์ง ๊ฒ์
๋๋ค." ๋ด ์กฐ์ธ: ์ฌ๋ฐ๋ฅธ ์ฝ๋๋ฅผ ์์ฑํ๋ ์์์น ๋ชปํ ์ํฉ์ ๋๋นํ์ธ์. ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ค๋ฉด ๋ฌธ์ ๋ซ๊ณ ๋๊ฐ์ญ์์ค. ๊ทํ์ ํ์ฌ๋ง์ด ์์ฅ์ ๋์ ์๋ ๊ฒ์ด ์๋๋๋ค.
ํจ์ 7๋ฒ: ๋น์ ์ ์์ ์ ๊ฐ์น๋ฅผ ๋ชจ๋ฅธ๋ค
"๋๋ ๋ ๋๋ฌธ์ ์ฌ๊ธฐ ์จ ๊ฒ์ด ์๋๋ค." ๊ทธ๋ผ ์ทจ๋ฏธ๋ฅผ ๊ฐ์ง์ธ์. ๋ค์ ์๊ธ์ ๋ํด ์๊ฐํ๋ฉด์ ๋งค์ผ ์ถ๊ทผํ์ง ๋ง์ญ์์ค. ๋ํ ๋ค๋ฅธ ์ฌ๋๋ณด๋ค ์์
์ด 50% ์ ๋ค๋ฉด ์ง์ฅ์ ์ถ๊ทผํด์๋ ์ ๋ฉ๋๋ค. ๋น์ ์ ๊ฐ์น๋ฅผ ์๊ณ ๊ทธ๊ฒ์ ๊ณผ์ํ๊ฐํ์ง ๋ง์ญ์์ค.
ํจ์ #8: ์ง์
์ ์ง์
์ฒ๋ผ ๋ํ๋ ๊ฒ
"๊ทธ๋ฅ ์ง์
์ผ ๋ฟ์ด์ผ." ์๋์, ์ด๊ฒ์ ๊ฒฝ๋ ฅ์ ํ ๋จ๊ณ์
๋๋ค. ๋น์ ์ ์ด ์ผ์ ์์ํ ํ ์๋ ์์ต๋๋ค. ๊ทธ๋ผ ์ฌ๊ธฐ์ ๋ฌด์์ ๋ฐฐ์ธ ์ ์๋์? ๋ค์ ๋จ๊ณ๋ ๋ฌด์์
๋๊น? ๊ถ๊ทน์ ์ผ๋ก ์ด๋๋ก ๊ฐ๊ณ ์ถ๋์? ์ด ์ผ์ด ๋น์ ์ด ๊ทธ ๋ชฉํ๋ฅผ ๋ฌ์ฑํ๋ ๋ฐ ์ด๋ป๊ฒ ๋์์ด ๋ ๊น์? ์ฃผ๋ณ ํ๊ฒฝ์ ๋ํ ์ธ์์ ๋์ด์ญ์์ค. ์ด๊ฒ์ ์ฅ๊ธฐ์ ์ผ๋ก ๋น์ ์๊ฒ ๋์์ด ๋ ๊ฒ์
๋๋ค. ๊ทธ๊ฒ์ ๋จ์ํ ์ง์
์ด ์๋๋ผ ์ฌํ์
๋๋ค.
ํจ์ 9๋ฒ: ๋๋ง ๋ฌธ์ ๋ผ๊ณ ์๊ฐํ๋๊ฐ?
์์
์ฌ์๋ค์ โ๋์ ์ ๋์ง์๋ฉด ์ ๊ฐ ์ผํฉ๋๋ค.โ๋ผ๊ณ ๋งํ๊ณ ์ถ์ดํฉ๋๋ค. ์, ํ์ง๋ง ํ๋งค ๋ถ์ผ์์ ์ผํ์ง ์๋ ํ, ๋ ๋๋ฌธ์ ๊ทธ ์ผ์ ํ๋ ์ฌ๋๊ณผ ํจ๊ป ์ผํ๊ณ ์ถ์ดํ๋ ์ฌ๋์ ์๋ฌด๋ ์์ต๋๋ค. ๋๋ ์์ ์ ์
๋ฌด๋ฅผ ์ฑ
์์ง๋ ์ฌ๋๊ณผ๋ง ์ผํ๊ณ ์ถ๋ค๋ ๊ฒ์ ์๊ณ ์์ต๋๋ค. ๋น์ ์์? ๋ฐ๋ฉด์, ์ฐธ์ ์ ์์ ์ ๋๋ก ์ฑ
์๊ฐ์ ๊ฐ์ง ํ์๋ ์์ต๋๋ค. ๋น์ ์ด ์ ๋ง๋ก ๊ฑฑ์ ํ๋ ๊ฒ์ด ํญ์ด๋ ๊ณต๋ฐฑ์ ๋ํ ์์ํ ๋
ผ์์ด๋ผ๋ฉด ์ง์ ์ ๋ฅผ ๋ณต์ฉํด์ผ ํ ์๋ ์์ต๋๋ค.
REST API ์ํคํ
์ฒ๊ฐ ์ธ๊ธฐ๋ฅผ ์ป๋ ์ด์ ๋ ๋ฌด์์
๋๊น?
์ถ์ฒ:
DZone ์ฆ๊ฐ์ ์ธ ์์ฌ์ํต์ ๋๋ผ์ด ์ผ์
๋๋ค. ์ฐ๋ฆฌ ๋ชจ๋๋ ์ธ๊ณ ์ด๋ ๊ณณ๊ณผ๋ ์ฆ๊ฐ์ ์ผ๋ก ์ํตํ ์ ์๋ค๋ ์ฌ์ค์ ์ต์ํฉ๋๋ค. ๋ฐ์คํฌํฑ ์ปดํจํฐ๋ ๋ชจ๋ฐ์ผ ์ฅ์น๋ฅผ ํตํด ์ด๋์๋ ๋ฌด์์ด๋ ๊ตฌ๋งค, ๊ฒ์, ์ฒจ๋ถ ๋ฐ ์ ํํ ์ ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ์ด์ ๊ณผ๋ ์ ํ ๋ค๋ฅธ ๋ฐฉ์์ผ๋ก ์๋ก ์ฐ๊ฒฐ๋์ด ์๊ณ ์ธ์๊ณผ๋ ์ฐ๊ฒฐ๋์ด ์์ต๋๋ค. ๊ทธ๋ฐ๋ฐ ์ด๋ป๊ฒ ์ด๋ฐ ์ผ์ด ์ผ์ด๋๋ ๊ฑธ๊น์? ๋ฐ์ดํฐ๋ "๊ฑฐ๊ธฐ์" ์ด๋ป๊ฒ ์ฐ๋ฆฌ์๊ฒ ์ ๋ฌ๋๋์?
์ฅ์น์ ์ ํ๋ฆฌ์ผ์ด์
์ ์ ํ๋ฆฌ์ผ์ด์
ํ๋ก๊ทธ๋๋ฐ ์ธํฐํ์ด์ค(API)๋ฅผ ์ฌ์ฉํ์ฌ ์๋ก ํต์ ํฉ๋๋ค. ์ด๊ฒ์ด ๋ฐ๋ก "ํ๋ ์๋"์ ์์ง์
๋๋ค. ์ด๋ ํญ์ ๋ฐฐํ์ ์์ผ๋ฉฐ ์ฐ๋ฆฌ๋ ์ด๋ฅผ ํ๋ฒํ ๊ฒ์ผ๋ก ์๊ฐํ๋ ๊ฒฝํฅ์ด ์์ง๋ง ์ฐ๋ฆฌ๊ฐ ์์กดํ๋ ๋ชจ๋ ์ํธ ์์ฉ์ ์์ฑํ๋ ๊ฒ์ API์
๋๋ค.
API๋ ๋ฌด์์
๋๊น?
๊ฐ๋จํ ๋งํด์, API๋ ์์ฒญ์ ์๋ฝํ๊ณ ์์คํ
์ ์ํํ๋ ค๋ ์์
์ ๋งํ ๋ค์ ์๋ต์ ๋ฐํํ๋ ๋ฉ์ ์ ์
๋๋ค. ์๊ฐ์ ์ธ ์๋ฅผ ๋ค์ด API๋ฅผ ๋ ์คํ ๋์ ์จ์ดํฐ๋ก ์์ํด ๋ณด์ธ์. ๋น์ ์ด ํ
์ด๋ธ์ ์์ ์์ ๋ฉ๋ดํ์ ๋ค๊ณ ์๊ณ ์ฃผ๋ฐฉ์ด ์ฃผ๋ฌธ์ ์ค๋นํ๋ ์์คํ
์ ์ผ๋ถ๋ผ๊ณ ์์ํด ๋ณด์ธ์. API๋ ์ฃผ๋ฌธ์ ์ฃผ๋ฐฉ์ผ๋ก ์ ์กํ๊ณ ์์์ ํ
์ด๋ธ๋ก ๋ฐฐ๋ฌํ๋ ๋งํฌ์
๋๋ค.
์ค์ ์๋ฅผ ๋ค์ด๋ณด๊ฒ ์ต๋๋ค.
์ฐ๋ฆฌ ๋ชจ๋๋ ์จ๋ผ์ธ์ผ๋ก ํญ๊ณตํธ์ ๊ฒ์ํ๋ ๊ณผ์ ์ ์ต์ํ๋ฉฐ, ํญ๊ณตํธ์ ์์ฝํ๋ ค๋ฉด ํญ๊ณต์ฌ ์น์ฌ์ดํธ์ ์ํธ ์์ฉํด์ผ ํ๋ค๋ ๊ฒ์ ์๊ณ ์์ต๋๋ค. ํด๋น ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ก์ธ์คํ์ฌ ํน์ ๋ ์ง์ ์ข์์ด ์๋์ง ํ์ธํ๊ณ ํญ๊ณตํธ ์๊ตฌ ์ฌํญ์ ๋ฐ๋ผ ์์ํ ์ ์๋ ๋น์ฉ์ ํ์ธํ์ธ์. ํ์ง๋ง ์ ๋ณด์ ์ง์ ์ ๊ทผํ ์ ์๋ ํญ๊ณต์ฌ ์น์ฌ์ดํธ๋ฅผ ์ด์ฉํ์ง ์๋๋ค๋ฉด ์ด๋ป๊ฒ ๋ ๊น์? ๋ค์ํ ํญ๊ณต์ฌ๋ก๋ถํฐ ์ ๋ณด๋ฅผ ์์งํ๋ ์จ๋ผ์ธ ์์ฝ ์๋น์ค๋ฅผ ์ด์ฉํ๋ค๋ฉด ์ด๋จ๊น์? ์ด ์๋น์ค๋ ํญ๊ณต์ฌ์ API์ ์ํธ ์์ฉํฉ๋๋ค. ์ฌ๊ธฐ์ API๋ ์น์ ํ ์จ์ดํฐ์ฒ๋ผ ์ข์ ์์ฝ๊ณผ ์น๊ฐ์ ์์ฌ ๋๋ ์ํ๋ฌผ ์ ํธ ์ฌํญ ์ ํ์ ๋ํ ์จ๋ผ์ธ ์๋น์ค ์ ๋ณด๋ฅผ ์์ฒญํ๋ ์ธํฐํ์ด์ค์
๋๋ค. ๊ทธ๋ฌ๋ฉด API๋ ํญ๊ณต์ฌ์ ์๋ต์ ๋ฐ์ ์จ๋ผ์ธ ์๋น์ค๋ก ๋ค์ ์ ๋ฌํ๊ณ , ์จ๋ผ์ธ ์๋น์ค๋ ์น๊ฐ์๊ฒ ์ ๋ณด๋ฅผ ํ์ํฉ๋๋ค. ๋ค๋ฅธ ๋ชจ๋ ์ ํ๋ฆฌ์ผ์ด์
, ๋ฐ์ดํฐ ๋ฐ ์ฅ์น ๊ฐ์๋ ๊ฑฐ์ ๋์ผํ ํ๋ก์ธ์ค๊ฐ ๋ฐ์ํฉ๋๋ค. ์ด๋ค ๋ชจ๋์๋ ์ปดํจํฐ๊ฐ ์ ์ดํ ์ ์๋ API๊ฐ ์์ผ๋ฉฐ, ์ด๋ ๊ถ๊ทน์ ์ผ๋ก ํต์ ์ ์์ฑํฉ๋๋ค.
์ด๋ค ์ ํ์ API๊ฐ ์๋์?
API ์ํคํ
์ฒ๋ ๋ ๊ฐ์ง ์ฃผ์ ๋ฐฉ๋ฒ์ผ๋ก ๊ตฌํ๋ ์ ์์ต๋๋ค. ์ ๋ณด ์ ์ก์ ๊ตฌํํ๋ ์ด๋ฌํ ๋ฐฉ๋ฒ ์ค ํ๋๋ SOAP์ด๊ณ ๋ค๋ฅธ ์ฃผ์ ๋ฐฉ๋ฒ์ REST์
๋๋ค. ์ฐ๋ฆฌ๋ API๊ฐ ๋ ์ ํ๋ฆฌ์ผ์ด์
๊ฐ์ ํต์ ์ ์ ๊ณตํ๋ค๋ ๊ฒ์ ์ด๋ฏธ ํ๋ฆฝํ์ต๋๋ค. ์ด์ ์ฐ๋ฆฌ๋ SOAP์ REST๊ฐ ํต์ ์ํคํ
์ฒ์ ์ ํํ ์ด๋ป๊ฒ ๋ค์ด๋ง๋์ง ์์๋ณผ ๊ฒ์
๋๋ค.
๋น๋ API
SOAP(Simple Object Access Protocol)๋ W3C๋ผ๋ ์ค์ ๊ธฐ๊ด๊ณผ ํต์ฌ ์ฌ์ ์ธํธ ๊ฐ์ ์ค์ ๋ ํน์ ํต์ ์์น์ผ๋ก ์ฌ์์ ๋ฐ๋ฅด๋ ์น ์๋น์ค์
๋๋ค. ์ด ์ธํธ์๋ ๋ค์์ด ํฌํจ๋ฉ๋๋ค:
SOAP๋ ๋ ์ ํ๋ฆฌ์ผ์ด์
์ด ์๋ก ํต์ ํ๋ ๋ฐฉ๋ฒ์ ์ ์ํ๋ ํ๋กํ ์ฝ์
๋๋ค. ๋ ์ ํ๋ฆฌ์ผ์ด์
์ด ์๋ก ํต์ ํ ๋ ๊ณตํต ํ์์ ๋ฐ๋ผ์ผ ํ๋ฉฐ, ์ด ๊ณตํต ํ์์ XML ์ธ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํด์ผ ํฉ๋๋ค. SOAP API์ XML์ ๋ดํฌ(Envelop), ํค๋(Header), ๋ณธ๋ฌธ(Body)์ผ๋ก ๊ตฌ์ฑ๋ SOAP ๋ฉ์์ง ํ์ค์ ์ค์ํด์ผ ํฉ๋๋ค.
REST API
์ด๊ฒ์ ๋งค์ฐ ์ค์ํ์ง๋ง ์ข
์ข
์คํด๋๋ ์น ์๋น์ค ๊ฐ๋
์ด๋ฏ๋ก REST ๋๋ RESTful API๊ฐ ๋ฌด์์ ์๋ฏธํ๋์ง ์์๋ณด๊ฒ ์ต๋๋ค. REST๋ ์์ฒด ์ํคํ
์ฒ ์์น์ ์ฌ์ฉํ์ฌ ๋ ์ ํ๋ฆฌ์ผ์ด์
๊ฐ์ ํต์ ์ ์์ํ๋ ์น ์๋น์ค์
๋๋ค. REST ์ํคํ
์ฒ๋ ์ด๋ ํ ํ๋กํ ์ฝ๋ ๋ฐ๋ฅด์ง ์๊ณ , ์๊ฒฉํ ์ฌ์๋ ์์ผ๋ฉฐ, ์ฌ์์ ์ ์ดํ๋ โโ์ค์ ๊ธฐ๊ด๋ ์๋ ์ํคํ
์ฒ ์คํ์ผ์
๋๋ค. ์ด๋ REST๋ฅผ ๋ชจ๋ ์ข
๋ฅ์ ์๋น์ค๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ ์์ฑํ๋ ๋ฐ ๋ค๋ชฉ์ ์ผ๋ก ๋ง๋ญ๋๋ค. ์น ์๋น์ค๋ฅผ ์์ฑํ ๋ ์ด๋ฌํ ์์น์ ์ ์ฉํ๋ฉด RESTful ์น ์๋น์ค๊ฐ ์์ฑ๋ฉ๋๋ค. ์ด์ ์กฐ๊ธ ๋ ๊น์ด ๋ค์ด๊ฐ REST ์ํคํ
์ฒ์ ๊ธฐ๋ฐ์ด ๋๋ ์์น์ ์์๋ด
์๋ค.
ํตํฉ ์ธํฐํ์ด์ค
RESTful ์ํคํ
์ฒ์์๋ ๋ชจ๋ ๊ฒ์ด ๋ฆฌ์์ค๋ก ๊ฐ์ฃผ๋ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์ง์ ๊ด๋ฆฌ ์์คํ
์ฉ ์ ํ๋ฆฌ์ผ์ด์
์ ์์ฑํ๋ ค๋ ๊ฒฝ์ฐ์
๋๋ค. ์ด ์ ํ๋ฆฌ์ผ์ด์
์ ๋ชจ๋ ์ธ์ด, ๋ชจ๋ ํ๋ซํผ, ๋ชจ๋ ํ๋ซํผ์ ์ฌ์ฉํ์ฌ ๊ฐ๋ฐํ ์ ์์ต๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก ๋ชจ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํ์ฌ ๋ด๋ถ ์๋น์ค๋ฅผ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค. REST API์ ๋ฆฌ์์ค ๊ฐ๋
์ ์ฌ์ฉ์๊ฐ ๋ชจ๋ ์ ๋ณด๋ ๋ชจ๋์ ๋ฆฌ์์ค๋ก ์ ์ํ ์ ์์์ ์๋ฏธํฉ๋๋ค. ์ง์ ๊ด๋ฆฌ ์์คํ
์ด ์ ๊ณต๋๋ฉด ์์ฑ์๋ ์ง์ ๋ฆฌ์์ค, ๋ถ์ ๋ฐ ์ ํ๋ฆฌ์ผ์ด์
์ ์ฌ์ฉ๋๋ ๊ธฐํ ๋ชจ๋์ ์ ์ํ ์ ์์ต๋๋ค.
๋ฌด๊ตญ์
RESTful ์ํคํ
์ฒ์์๋ ๋ชจ๋ ์๋ต๊ณผ ์์ฒญ, ์๋ฒ ๊ฐ์ ๋ชจ๋ ํต์ ์ด ์ํ ๋น์ ์ฅ์
๋๋ค. ์ด๋ ์๋ฒ๊ฐ ์์คํ
์ ํ์ฌ ์ํ๋ฅผ ์ ์งํ์ง ์๊ณ ํด๋ผ์ด์ธํธ๊ฐ ์์ฒด์ ์ผ๋ก ์๋ฃ๋๋ ์์ฒญ์ ๋ณด๋ผ ์ ์์์ ์๋ฏธํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ์์ฒญ์ ์ด์ ์์ฒญ์ ์์กดํ์ง ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ์จ๋ผ์ธ์ผ๋ก ์ผํํ๊ณ ์ฅ๋ฐ๊ตฌ๋์ ํญ๋ชฉ์ ์ถ๊ฐํ๋ ๊ฒฝ์ฐ ์๋ฒ๋ ์ฅ๋ฐ๊ตฌ๋ ์ํ๋ฅผ ์ ์งํ์ง ์์ผ๋ฏ๋ก ์ฌ์ฉ์๊ฐ ์๋ฒ์ ์์ฒญ์ ์ ์ถํ ๋๋ง๋ค ํด๋น ์์ ์ ์ฅ๋ฐ๊ตฌ๋ ์ํ๊ฐ ํฌํจ๋ฉ๋๋ค. ์์ฒญ์ด ์ด๋ฃจ์ด์ก์ต๋๋ค. ์ํ ๋น์ ์ฅ์ธ ๊ฒฝ์ฐ ์๋ฒ๊ฐ ์ธ์
์ ์ ์ฅํ๊ฑฐ๋ ์ ์งํ๋ ๋ฐ ๋๋ ์ค๋ฒํค๋๊ฐ ์์ผ๋ฏ๋ก ์น ์๋น์ค์ ์ฑ๋ฅ์ด ํฅ์๋ฉ๋๋ค.
์บ์ฑ ๊ธฐ๋ฅ
๋ง์ง๋ง ํ๋กํ ์ฝ์์ ์ฐ๋ฆฌ๋ RESTful ์ํคํ
์ฒ์์ ์๋ฒ๊ฐ ์ธ์
์ํ๋ฅผ ์ ์ฅํ์ง ์๊ณ ๋ชจ๋ ์บ์ฑ์ด ํด๋ผ์ด์ธํธ ์ธก์์ ๋ฐ์ํ๋ค๋ ๊ฒ์ ํ์ธํ์ต๋๋ค. ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์์ฒญ์ ๋ณด๋ผ ๋๋ง๋ค ์๋ฒ๋ ์ค์ ๋ฐ์ดํฐ์ ์๋ต์ ๋ก์ปฌ์ ์ ์ฅํด์ผ ํ๋์ง ์ฌ๋ถ๋ฅผ ํด๋ผ์ด์ธํธ์๊ฒ ์๋ ค์ฃผ๋ ๊ธฐํ ๋ฉํ๋ฐ์ดํฐ๊ฐ ํฌํจ๋ ์๋ต์ ๋ฐํํฉ๋๋ค.
๋ค๋จ๊ณ ์์คํ
REST ์์น์ ๋ฐ๋ฅด๋ฉด ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ํต์ ์ด ์์ ๋๋ง๋ค ๋ ์ฌ์ด์ ์ฌ๋ฌ ๊ณ์ธต์ด ์์ ์ ์์ผ๋ฉฐ ์ด๋ฌํ ๊ณ์ธต์ ์ฌ์ฉํ์ฌ ๋ฉ์์ง ๋ณํ, ์ฑ๋ฅ ํฅ์, ์บ์ฑ ๋ฐ ๊ธฐํ ๋ค์ํ ๋ชฉ์ ์ ๊ตฌํํ ์ ์์ต๋๋ค. ๊ฐ ์์ฌ์ํต ์์ค์๋ ํน์ ์์
์ด ์์ต๋๋ค. ์ฌ๋ฌ ๊ณ์ธต์ ํต์ ์ ํตํด ์์คํ
์ด ํจ์จ์ ์ผ๋ก ์๋ํ์ฌ ์๋์ ๋ด๊ตฌ์ฑ์ด ํฅ์๋ฉ๋๋ค.
์์ฒญ ์ ์ฝ๋
์ด๋ ์ฌ์ฉ์๊ฐ ์๋ต์ ๋ฐ๊ธฐ ์ํด ์์ฒญ์ ์ ์ถํ ๋ ์๋ํ๋ RESTful ์น ์๋น์ค์ ์ ํ์ ์ ํ ์ฌํญ์
๋๋ค. ์๋ต์ ํด๋ผ์ด์ธํธ ์ธก ์ฝ๋๋ฅผ ์คํํ ์ ์์ต๋๋ค. ์ด ์์น์ ์์ฌ์ํต์ ๊ธฐ๋ฅ์ ํ์ฅํฉ๋๋ค.
REST API๊ฐ ์ ์ ๋ ์์ฃผ ์ฌ์ฉ๋๋ ์ด์ ๋ ๋ฌด์์
๋๊น?
REST๋ ๋๋ถ๋ถ ์ฌ์ฉํ๊ธฐ ์ฝ๊ณ ์ ์ฐํ๋ฉฐ SOAP์ ๋นํด ์ฌ๋ฌ ๊ฐ์ง ์ฅ์ ์ด ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ์น ์๋น์ค์ ์ํธ ์์ฉํ๋ ๋ฐ ๊ฐ๋น์ผ ๋๊ตฌ๊ฐ ํ์ํ์ง ์์ต๋๋ค. REST ์ํคํ
์ฒ๋ ๋ ๊ฐ๋จํ๊ณ ์ฝ๊ฒ ์ฌ์ฉ์ ์ ์ํ ์ ์์ผ๋ฉฐ ํต์ ๋ชจ๋ธ์ ์์ฑํ ๋ ํน๋ณํ ๊ธฐ์ ์ด ํ์ํ์ง ์์ต๋๋ค. ์๋ฒ์ ํด๋ผ์ด์ธํธ ์ธก์ ์ด์ฉํ์ฌ ํด๋ผ์ด์ธํธ ๊ด๋ จ ์ ๋ณด๋ฅผ ์ ์ฅํ ์ ์์ด ํ์ฉ๋๊ฐ ํจ์จ์ ์
๋๋ค. REST๋ ๋ ์์ ๋ฉ์์ง ํ์์ ์ฌ์ฉํ๊ณ ์๊ฐ์ด ๋ง์ด ๊ฑธ๋ฆฌ๋ ์ฒ๋ฆฌ๊ฐ ํ์ํ์ง ์๊ธฐ ๋๋ฌธ์ ๋ ๋น ๋ฅธ ์ํธ ์์ฉ์ ์ ๊ณตํฉ๋๋ค. REST๋ ๋์์ธ ์ฒ ํ์ ์์ด์๋ ๋ค๋ฅธ ์น ๊ธฐ์ ๊ณผ ๋ ๊ฐ๊น์ต๋๋ค.
SOAP ๋๋ REST?
์ผ๋ฐ์ ์ธ ์น ์ ํ๋ฆฌ์ผ์ด์
์ ์๊ตฌ ์ฌํญ์ ๋นํด SOAP๋ ๊ณผ๋ํ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. REST๋ ์น ์ ํ๋ฆฌ์ผ์ด์
์ API๊ฐ ํ์ํ ๋ ํ์ํ ๋ชจ๋ ๊ฒ์ ๊ฐ์ถ ๋ ๊ฐ๋จํ ์๋ฃจ์
์
๋๋ค. ๊ทธ๋ฌ๋ ์์
์ ์ํํ๊ธฐ ์ํด API๊ฐ ์ข ๋ ๋ณต์กํด์ผ ํ๋ ๊ฒฝ์ฐ๋ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ์๋ํ๋ ์์ฒญ์ API๊ฐ ํ์ํ ๊ฒฝ์ฐ SOAP API๊ฐ ํด๋น ์๋๋ฆฌ์ค์ ๋ ์ ํฉํฉ๋๋ค. ๊ฐ๋จํ ๋งํด์, ๋ฌธ์ ๊ฐ ํฌ๊ณ ๋ณต์กํ๋ค๋ฉด SOAP๋ฅผ ์ ํํ๊ณ , ๊ฐ๋จํ ์๋ฃจ์
์ด ํ์ํ๋ค๋ฉด REST๋ฅผ ์ ํํ์ธ์.
GO TO FULL VERSION