JavaRush /Java Blog /Random-KO /์ปคํ”ผ ๋ธŒ๋ ˆ์ดํฌ #31. ๋ชจ๋“  ๊ฐœ๋ฐœ์ž๊ฐ€ ํ”ผํ•ด์•ผ ํ•  9๊ฐ€์ง€ ์ง์—… ์‹ค์ˆ˜ REST API ์•„ํ‚คํ…์ฒ˜๊ฐ€ ์ธ๊ธฐ๋ฅผ ์–ป...

์ปคํ”ผ ๋ธŒ๋ ˆ์ดํฌ #31. ๋ชจ๋“  ๊ฐœ๋ฐœ์ž๊ฐ€ ํ”ผํ•ด์•ผ ํ•  9๊ฐ€์ง€ ์ง์—… ์‹ค์ˆ˜ REST API ์•„ํ‚คํ…์ฒ˜๊ฐ€ ์ธ๊ธฐ๋ฅผ ์–ป๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

Random-KO ๊ทธ๋ฃน์— ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค

๋ชจ๋“  ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์ž๊ฐ€ ํ”ผํ•ด์•ผ ํ•  9๊ฐ€์ง€ ์ง์—…์ƒ์˜ ์‹ค์ˆ˜

์ถœ์ฒ˜: Infoworld ์ปคํ”ผ ๋ธŒ๋ ˆ์ดํฌ #31.  ๋ชจ๋“  ๊ฐœ๋ฐœ์ž๊ฐ€ ํ”ผํ•ด์•ผ ํ•  9๊ฐ€์ง€ ์ง์—… ์‹ค์ˆ˜  REST API ์•„ํ‚คํ…์ฒ˜๊ฐ€ ์ธ๊ธฐ๋ฅผ ์–ป๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?  - 1 ์†”์งํ•˜๊ฒŒ ๋ง์”€๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„ ์ค‘ ์ผ๋ถ€๋Š” ์ž์‹ ์ด๋‚˜ ๋ถ€๋ชจ๋‹˜์ด ๋ˆ์„ ๋งŽ์ด ๋ฒ„๋Š” ๊ฒƒ์ด ๋” ์‰ฌ์šธ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ๋ฐฐ์šฐ๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ํ•™๊ต์—์„œ ์ปดํ“จํ„ฐ๋ฅผ ๋ณ„๋กœ ์ข‹์•„ํ•˜์ง€๋„ ์•Š์•˜๊ณ , ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์„ ๋ณ„๋กœ ์ข‹์•„ํ•˜์ง€๋„ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์‚ฌ์‹ค์ด๋ผ๋ฉด ์ด๋Š” ๋‹น์‹ ์ด ํ•ญ์ƒ ํ‰๋ฒ”ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ๋  ๊ฒƒ์ž„์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ, ์šฐ๋ฆฌ ์—…๊ณ„๊ฐ€ ์„ ํ˜ธํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋‹น์‹ ์€ ์ข‹์€ ๋ˆ์„ ๋ฒŒ ์ˆ˜ ์žˆ์ง€๋งŒ ์ด ๊ธฐ์‚ฌ๋Š” ๋‹น์‹ ์„ ์œ„ํ•œ ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์–ด๋ ธ์„ ๋•Œ ์ „์ž ์ œํ’ˆ์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์•Œ์•„๋‚ด๊ธฐ ์œ„ํ•ด ๋ถ„ํ•ดํ–ˆ๋‹ค๋Š” ์ด์œ ๋กœ ์ฒ˜๋ฒŒ์„ ๋ฐ›์•˜๋‹ค๋ฉด... ๋น„๋””์˜ค ๊ฒŒ์ž„์„ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์šฐ๊ธฐ ์œ„ํ•ด ์ธํ„ฐ๋„ท์—์„œ ๋ฐ˜๋‚˜์ ˆ์„ ๋ณด๋ƒˆ๋‹ค๋ฉด... ๊ท€์ค‘ํ•œ ์ž์œ  ์‹œ๊ฐ„์„ ๋ฌด์—‡์— ๋Œ€ํ•ด ๋ฐฐ์šฐ๋Š” ๋ฐ ๋ณด๋ƒˆ๋‹ค๋ฉด? ์•„๋ฌด๋„ ๋‹น์‹ ์—๊ฒŒ ๋ฌป์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค... ์ด ๊ธ€์€ ๋‹น์‹ ์„ ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ง„๋กœ์— ๋Œ€ํ•œ ์ธ์‹์„ ๋ฐ”๊ฟ”์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์žฌ๋ฏธ๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ˆ์„ ์œ„ํ•ด ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค. ์žฌ๋ฏธ๋กœ ๊ฐœ์ธ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง€์›ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ ์–ด๋„ ํ•˜๋ฃจ ์ผ๊ณผ๋ฅผ ์ฆ๊ฒ๊ฒŒ ๋ณด๋‚ด์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š๋‹ค๋ฉด ๊ฐ€๋Šฅํ•˜๋ฉด ๋” ๋‚˜์€ ๊ณณ์„ ์ฐพ์œผ์‹ญ์‹œ์˜ค. ๋‹น์‹ ์˜ ๋ชฉํ‘œ๋Š” ์€ํ‡ด ๊ธฐ๊ธˆ์„ ๊ฐœ์„คํ•˜๊ณ , ์„ธํ›„ ์ž๊ธˆ์„ ๋ชจ๋‘ ์—ฌ๊ธฐ์— ๋„ฃ๊ณ , ์ง‘๊ณผ ์ž๋™์ฐจ๋ฅผ ๊ตฌ์ž…ํ•˜๊ณ , ์›ํ•˜๋Š” ์ผ์„ ํ•˜๋Š” ๊ฒƒ์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์–ด์ฉŒ๋ฉด ์—ฌํ–‰. ๋™์‹œ์— ํ˜„์žฌ ์ง์—…๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๊ฒฝ๋ ฅ์— ๋Œ€ํ•ด์„œ๋„ ์ƒ๊ฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ ค๋ฉด 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 ์ฆ‰๊ฐ์ ์ธ ์˜์‚ฌ์†Œํ†ต์€ ๋†€๋ผ์šด ์ผ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ ๋ชจ๋‘๋Š” ์„ธ๊ณ„ ์–ด๋Š ๊ณณ๊ณผ๋„ ์ฆ‰๊ฐ์ ์œผ๋กœ ์†Œํ†ตํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์‚ฌ์‹ค์— ์ต์ˆ™ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์Šคํฌํ†ฑ ์ปดํ“จํ„ฐ๋‚˜ ๋ชจ๋ฐ”์ผ ์žฅ์น˜๋ฅผ ํ†ตํ•ด ์–ด๋””์„œ๋‚˜ ๋ฌด์—‡์ด๋“  ๊ตฌ๋งค, ๊ฒŒ์‹œ, ์ฒจ๋ถ€ ๋ฐ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด์ „๊ณผ๋Š” ์ „ํ˜€ ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ์„œ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๊ณ  ์„ธ์ƒ๊ณผ๋„ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์–ด๋–ป๊ฒŒ ์ด๋Ÿฐ ์ผ์ด ์ผ์–ด๋‚˜๋Š” ๊ฑธ๊นŒ์š”? ๋ฐ์ดํ„ฐ๋Š” "๊ฑฐ๊ธฐ์„œ" ์–ด๋–ป๊ฒŒ ์šฐ๋ฆฌ์—๊ฒŒ ์ „๋‹ฌ๋˜๋‚˜์š”? ์ปคํ”ผ ๋ธŒ๋ ˆ์ดํฌ #31.  ๋ชจ๋“  ๊ฐœ๋ฐœ์ž๊ฐ€ ํ”ผํ•ด์•ผ ํ•  9๊ฐ€์ง€ ์ง์—… ์‹ค์ˆ˜  REST API ์•„ํ‚คํ…์ฒ˜๊ฐ€ ์ธ๊ธฐ๋ฅผ ์–ป๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?  - 2์žฅ์น˜์™€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ธํ„ฐํŽ˜์ด์Šค(API)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„œ๋กœ ํ†ต์‹ ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋ฐ”๋กœ "ํ›„๋“œ ์•„๋ž˜"์˜ ์—”์ง„์ž…๋‹ˆ๋‹ค. ์ด๋Š” ํ•ญ์ƒ ๋ฐฐํ›„์— ์žˆ์œผ๋ฉฐ ์šฐ๋ฆฌ๋Š” ์ด๋ฅผ ํ‰๋ฒ”ํ•œ ๊ฒƒ์œผ๋กœ ์ƒ๊ฐํ•˜๋Š” ๊ฒฝํ–ฅ์ด ์žˆ์ง€๋งŒ ์šฐ๋ฆฌ๊ฐ€ ์˜์กดํ•˜๋Š” ๋ชจ๋“  ์ƒํ˜ธ ์ž‘์šฉ์„ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์€ API์ž…๋‹ˆ๋‹ค.

API๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๊ฐ„๋‹จํžˆ ๋งํ•ด์„œ, API๋Š” ์š”์ฒญ์„ ์ˆ˜๋ฝํ•˜๊ณ  ์‹œ์Šคํ…œ์— ์ˆ˜ํ–‰ํ•˜๋ ค๋Š” ์ž‘์—…์„ ๋งํ•œ ๋‹ค์Œ ์‘๋‹ต์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฉ”์‹ ์ €์ž…๋‹ˆ๋‹ค. ์‹œ๊ฐ์ ์ธ ์˜ˆ๋ฅผ ๋“ค์–ด API๋ฅผ ๋ ˆ์Šคํ† ๋ž‘์˜ ์›จ์ดํ„ฐ๋กœ ์ƒ์ƒํ•ด ๋ณด์„ธ์š”. ๋‹น์‹ ์ด ํ…Œ์ด๋ธ”์— ์•‰์•„ ์†์— ๋ฉ”๋‰ดํŒ์„ ๋“ค๊ณ  ์žˆ๊ณ  ์ฃผ๋ฐฉ์ด ์ฃผ๋ฌธ์„ ์ค€๋น„ํ•˜๋Š” ์‹œ์Šคํ…œ์˜ ์ผ๋ถ€๋ผ๊ณ  ์ƒ์ƒํ•ด ๋ณด์„ธ์š”. API๋Š” ์ฃผ๋ฌธ์„ ์ฃผ๋ฐฉ์œผ๋กœ ์ „์†กํ•˜๊ณ  ์Œ์‹์„ ํ…Œ์ด๋ธ”๋กœ ๋ฐฐ๋‹ฌํ•˜๋Š” ๋งํฌ์ž…๋‹ˆ๋‹ค.

์‹ค์ œ ์˜ˆ๋ฅผ ๋“ค์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ ๋ชจ๋‘๋Š” ์˜จ๋ผ์ธ์œผ๋กœ ํ•ญ๊ณตํŽธ์„ ๊ฒ€์ƒ‰ํ•˜๋Š” ๊ณผ์ •์— ์ต์ˆ™ํ•˜๋ฉฐ, ํ•ญ๊ณตํŽธ์„ ์˜ˆ์•ฝํ•˜๋ ค๋ฉด ํ•ญ๊ณต์‚ฌ ์›น์‚ฌ์ดํŠธ์™€ ์ƒํ˜ธ ์ž‘์šฉํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์•ก์„ธ์Šคํ•˜์—ฌ ํŠน์ • ๋‚ ์งœ์— ์ขŒ์„์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ํ•ญ๊ณตํŽธ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋”ฐ๋ผ ์˜ˆ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋น„์šฉ์„ ํ™•์ธํ•˜์„ธ์š”. ํ•˜์ง€๋งŒ ์ •๋ณด์— ์ง์ ‘ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ํ•ญ๊ณต์‚ฌ ์›น์‚ฌ์ดํŠธ๋ฅผ ์ด์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ๋ ๊นŒ์š”? ๋‹ค์–‘ํ•œ ํ•ญ๊ณต์‚ฌ๋กœ๋ถ€ํ„ฐ ์ •๋ณด๋ฅผ ์ˆ˜์ง‘ํ•˜๋Š” ์˜จ๋ผ์ธ ์˜ˆ์•ฝ ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•œ๋‹ค๋ฉด ์–ด๋–จ๊นŒ์š”? ์ด ์„œ๋น„์Šค๋Š” ํ•ญ๊ณต์‚ฌ์˜ API์™€ ์ƒํ˜ธ ์ž‘์šฉํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ API๋Š” ์นœ์ ˆํ•œ ์›จ์ดํ„ฐ์ฒ˜๋Ÿผ ์ขŒ์„ ์˜ˆ์•ฝ๊ณผ ์Šน๊ฐ์˜ ์‹์‚ฌ ๋˜๋Š” ์ˆ˜ํ•˜๋ฌผ ์„ ํ˜ธ ์‚ฌํ•ญ ์„ ํƒ์— ๋Œ€ํ•œ ์˜จ๋ผ์ธ ์„œ๋น„์Šค ์ •๋ณด๋ฅผ ์š”์ฒญํ•˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด API๋Š” ํ•ญ๊ณต์‚ฌ์˜ ์‘๋‹ต์„ ๋ฐ›์•„ ์˜จ๋ผ์ธ ์„œ๋น„์Šค๋กœ ๋‹ค์‹œ ์ „๋‹ฌํ•˜๊ณ , ์˜จ๋ผ์ธ ์„œ๋น„์Šค๋Š” ์Šน๊ฐ์—๊ฒŒ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ชจ๋“  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ๋ฐ์ดํ„ฐ ๋ฐ ์žฅ์น˜ ๊ฐ„์—๋„ ๊ฑฐ์˜ ๋™์ผํ•œ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด๋“ค ๋ชจ๋‘์—๋Š” ์ปดํ“จํ„ฐ๊ฐ€ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” API๊ฐ€ ์žˆ์œผ๋ฉฐ, ์ด๋Š” ๊ถ๊ทน์ ์œผ๋กœ ํ†ต์‹ ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์–ด๋–ค ์œ ํ˜•์˜ API๊ฐ€ ์žˆ๋‚˜์š”?

API ์•„ํ‚คํ…์ฒ˜๋Š” ๋‘ ๊ฐ€์ง€ ์ฃผ์š” ๋ฐฉ๋ฒ•์œผ๋กœ ๊ตฌํ˜„๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ •๋ณด ์ „์†ก์„ ๊ตฌํ˜„ํ•˜๋Š” ์ด๋Ÿฌํ•œ ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜๋Š” SOAP์ด๊ณ  ๋‹ค๋ฅธ ์ฃผ์š” ๋ฐฉ๋ฒ•์€ REST์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” API๊ฐ€ ๋‘ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐ„์˜ ํ†ต์‹ ์„ ์ œ๊ณตํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์ด๋ฏธ ํ™•๋ฆฝํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ์šฐ๋ฆฌ๋Š” SOAP์™€ REST๊ฐ€ ํ†ต์‹  ์•„ํ‚คํ…์ฒ˜์— ์ •ํ™•ํžˆ ์–ด๋–ป๊ฒŒ ๋“ค์–ด๋งž๋Š”์ง€ ์•Œ์•„๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋น„๋ˆ„ API

SOAP(Simple Object Access Protocol)๋Š” W3C๋ผ๋Š” ์ค‘์•™ ๊ธฐ๊ด€๊ณผ ํ•ต์‹ฌ ์‚ฌ์–‘ ์„ธํŠธ ๊ฐ„์— ์„ค์ •๋œ ํŠน์ • ํ†ต์‹  ์›์น™์œผ๋กœ ์‚ฌ์–‘์„ ๋”ฐ๋ฅด๋Š” ์›น ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ์ด ์„ธํŠธ์—๋Š” ๋‹ค์Œ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค:
  • ๋น„๋ˆ„
  • WSDL
  • UDDI
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๋ฅผ ์„ ํƒํ•˜์„ธ์š”.
์ฝ”๋ฉ˜ํŠธ
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION