Inflearn brand logo image
Inflearn brand logo image
์ฑ„๋„ํ†ก ์•„์ด์ฝ˜
BEST

๋ชจ๋“  ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ HTTP ์›น ๊ธฐ๋ณธ ์ง€์‹

์‹ค๋ฌด์— ๊ผญ ํ•„์š”ํ•œ HTTP ํ•ต์‹ฌ ๊ธฐ๋Šฅ๊ณผ ์˜ฌ๋ฐ”๋ฅธ HTTP API ์„ค๊ณ„ ๋ฐฉ๋ฒ•์„ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.

Thumbnail
๊น€์˜ํ•œ๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€

์Šคํ”„๋ง ํ•ต์‹ฌ ์›๋ฆฌ - ๊ณ ๊ธ‰ํŽธ ์˜คํ”ˆ ์˜ˆ์ • ์†Œ์‹!

์•ˆ๋…•ํ•˜์„ธ์š”. ์—ฌ๋Ÿฌ๋ถ„
๋“œ๋””์–ด ์Šคํ”„๋ง ํ•ต์‹ฌ ์›๋ฆฌ - ๊ณ ๊ธ‰ํŽธ ๊ฐ•์˜๊ฐ€ ์˜คํ”ˆ ์ค€๋น„์— ๋Œ์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค.
์˜ค๋žœ๊ธฐ๊ฐ„ ๊ธฐ๋‹ค๋ ค์ฃผ์‹œ๊ณ  ์‘์›ํ•ด์ฃผ์…”์„œ ๊ณ ๋ง™์Šต๋‹ˆ๋‹ค.

- ์ œ๋ชฉ: ์Šคํ”„๋ง ํ•ต์‹ฌ ์›๋ฆฌ - ๊ณ ๊ธ‰ํŽธ
- ์ถœ์‹œ ์ผ์ •: 10์›” 27์ผ(์ˆ˜) ~ 11์›” 3์ผ(์ˆ˜) ์‚ฌ์ด์— ์ถœ์‹œ
- ๊ฐ•์˜ ์ˆ˜: 120๊ฐ•
- ๊ฐ•์˜ ์ž๋ฃŒ: PDF 360์žฅ

๊ธฐ๋ณธํŽธ ๊ฐ•์˜์—์„œ ์Šคํ”„๋ง๊ณผ ๊ฐ์ฒด ์ง€ํ–ฅ ๊ฐœ๋ฐœ์˜ ๊ธฐ๋ณธ๊ธฐ๋ฅผ ํ•™์Šตํ–ˆ๋‹ค๋ฉด, ๊ณ ๊ธ‰ํŽธ ๊ฐ•์˜๋Š” ์Šคํ”„๋ง๊ณผ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์„ ๊นŠ์ด์žˆ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•œ ์‹ฌ๋„์žˆ๋Š” ์ฃผ์ œ๋“ค์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค. 

๊ณ ๊ธ‰ํŽธ ํ•ต์‹ฌ ์ฃผ์ œ

- ์Šคํ”„๋ง ํ•ต์‹ฌ ๋””์ž์ธ ํŒจํ„ด
- ๋™์‹œ์„ฑ ๋ฌธ์ œ์™€ ์“ฐ๋ ˆ๋“œ ๋กœ์ปฌ
- ์Šคํ”„๋ง AOP

์–ด๋ ค์šด ๋‚ด์šฉ๋“ค์ด์ง€๋งŒ ์‹ค๋ ฅ์žˆ๋Š” ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๋ ค๋ฉด ๋ฐ˜๋“œ์‹œ ํ•œ๋ฒˆ์€ ๊นŠ์ด์žˆ๊ฒŒ ๊ณต๋ถ€ํ•ด์•ผ ํ•˜๋Š” ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.
๋ณต์žกํ•˜๊ณ  ์–ด๋ ค์šด ์Šคํ”„๋ง์˜ ํ•ต์‹ฌ ์‹ฌํ™” ๋‚ด์šฉ์„ ์ด ๊ฐ•์˜ ํ•˜๋‚˜๋กœ ๋งˆ๋ฌด๋ฆฌ ์ง“๋Š”๋‹ค๊ณ  ์ƒ๊ฐํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋‹ค์Œ ๊ฐ•์˜ ์†Œ๊ฐœ๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”.

 

๊ฐ•์˜ ์†Œ๊ฐœ

*์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ*

์‹ค๋ ฅ์žˆ๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๋ ค๋ฉด ์‹ค๋ฌด์—์„œ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๋„๊ตฌ๋ฅผ ๊นŠ์ด์žˆ๊ฒŒ ์ดํ•ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
์Šคํ”„๋ง์€ ์‹ค๋ฌด์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ๋ฐฑ์—”๋“œ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค.
๋”ฐ๋ผ์„œ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๋ผ๋ฉด ์Šคํ”„๋ง์„ ๊นŠ์ด์žˆ๊ฒŒ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ์•ž์„œ ์Šคํ”„๋ง ํ•ต์‹ฌ ์›๋ฆฌ - ๊ธฐ๋ณธํŽธ์—์„œ ์Šคํ”„๋ง๊ณผ ๊ฐ์ฒด ์ง€ํ–ฅ ๊ฐœ๋ฐœ์˜ ๊ธฐ๋ณธ๊ธฐ๋ฅผ ํ•™์Šตํ–ˆ์Šต๋‹ˆ๋‹ค.

*์Šคํ”„๋ง ํ•ต์‹ฌ ์›๋ฆฌ - ๊ธฐ๋ณธํŽธ*

๊ฐ์ฒด ์ง€ํ–ฅ ์„ค๊ณ„์™€ ์Šคํ”„๋ง
  - SOLID - SRP, OCP, DIP
์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์™€ ์Šคํ”„๋ง ๋นˆ
  - ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ - IoC, DI
  - ์˜์กด๊ด€๊ณ„ ์ฃผ์ž…
  - ๋นˆ ์ƒ์„ฑ์ฃผ๊ธฐ์™€ ์Šค์ฝ”ํ”„

*์Šคํ”„๋ง ํ•ต์‹ฌ ์›๋ฆฌ - ๊ณ ๊ธ‰ํŽธ*

์Šคํ”„๋ง์„ ๊นŠ์ด์žˆ๊ฒŒ ์ดํ•ดํ•˜๊ณ , ์‹ค๋ฌด์—์„œ ์‹ค๋ ฅ์žˆ๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๋ ค๋ฉด, ๊ธฐ๋ณธํŽธ์—์„œ ํ•™์Šตํ•œ ๋‚ด์šฉ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํฌ๊ฒŒ 3๊ฐ€์ง€ ํ•ต์‹ฌ ๊ณ ๊ธ‰ ๊ฐœ๋…์„ ์•Œ์•„์•ผํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฒˆ ๊ณ ๊ธ‰ํŽธ์—์„œ๋Š” ์ด๋Ÿฌํ•œ ๊ณ ๊ธ‰ ๊ฐœ๋…์„ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.

1. ์Šคํ”„๋ง ํ•ต์‹ฌ ๋””์ž์ธ ํŒจํ„ด
2. ๋™์‹œ์„ฑ ๋ฌธ์ œ๋ฅผ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•œ ์“ฐ๋ ˆ๋“œ ๋กœ์ปฌ
3. ์Šคํ”„๋ง AOP 

*1. ์Šคํ”„๋ง ํ•ต์‹ฌ ๋””์ž์ธ ํŒจํ„ด*

์Šคํ”„๋ง์˜ ๋‚ด๋ถ€ ๊ธฐ์ˆ ๋“ค์€ ๋ช‡ ๊ฐ€์ง€ ํ•ต์‹ฌ ๋””์ž์ธ ํŒจํ„ด์œผ๋กœ ๋งŒ๋“ค์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์Šคํ”„๋ง์„ ๊นŠ์ด์žˆ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋จผ์ € ์Šคํ”„๋ง์ด ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๋””์ž์ธ ํŒจํ„ด๋“ค์„ ์•Œ์•„์•ผํ•ฉ๋‹ˆ๋‹ค.

*๊ฐ•์˜์—์„œ ์ „๋‹ฌํ•˜๋Š” ํ•ต์‹ฌ ๋””์ž์ธ ํŒจํ„ด*

  - ํ…œํ”Œ๋ฆฟ ๋ฉ”์„œ๋“œ ํŒจํ„ด
  - ์ „๋žต ํŒจํ„ด
  - ํ…œํ”Œ๋ฆฟ ์ฝœ๋ฐฑ ํŒจํ„ด
  - ํ”„๋ก์‹œ ํŒจํ„ด
  - ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ ํŒจํ„ด

๊ฐ•์˜์—์„œ๋Š” ์ด๋Ÿฌํ•œ ๋””์ž์ธ ํŒจํ„ด๋“ค์„ ์˜ˆ์ œ ์ฝ”๋“œ๋กœ ํ•˜๋‚˜ํ•˜๋‚˜ ๋งŒ๋“ค์–ด๋ณด๋ฉด์„œ ์•„์ฃผ ์‰ฝ๊ฒŒ ์„ค๋ช…ํ•ด๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด๋ ‡๊ฒŒ ํ•™์Šตํ•œ ๋””์ž์ธ ํŒจํ„ด์„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์•Œ์•„๋ด…๋‹ˆ๋‹ค.

 

*2. ์“ฐ๋ ˆ๋“œ ๋กœ์ปฌ*

์Šคํ”„๋ง์€ ์ฃผ๋กœ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋™์‹œ์— ์—ฌ๋Ÿฌ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ๋ฉ€ํ‹ฐ์“ฐ๋ ˆ๋“œ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์—ฌ๋Ÿฌ ์“ฐ๋ ˆ๋“œ๊ฐ€ ๊ฒฝํ•ฉํ•˜๋Š” ๋™์‹œ์„ฑ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

*๊ฐ•์˜์—์„œ ์ „๋‹ฌํ•˜๋Š” ๋™์‹œ์„ฑ ๋ฌธ์ œ์™€ ์“ฐ๋ ˆ๋“œ ๋กœ์ปฌ ๋‚ด์šฉ*

  - ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜
  - ๋ฉ€ํ‹ฐ์“ฐ๋ ˆ๋“œ
  - ๋™์‹œ์„ฑ ๋ฌธ์ œ

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

 

*3. ์Šคํ”„๋ง AOP*

์Šคํ”„๋ง AOP๋Š” ์‹ค๋ฌด์—์„œ ์ •๋ง ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š”, ๋งˆ์น˜ ๋งˆ๋ฒ•์ฒ˜๋Ÿผ ๋Š๊ปด์งˆ ์ •๋„๋กœ ํŽธ๋ฆฌํ•œ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. ๋งŽ์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ์Šคํ”„๋ง AOP๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ, ์Šคํ”„๋ง AOP๊ฐ€ ์–ด๋–ป๊ฒŒ ๋™์ž‘ํ•˜๋Š”์ง€ ๊ทธ ์›๋ฆฌ๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ์ดํ•ดํ•˜๊ณ  ์‚ฌ์šฉํ•˜๋Š” ๊ฐœ๋ฐœ์ž๋Š” ๋งŽ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‹จ์ˆœํžˆ ์Šคํ”„๋ง AOP์˜ ๊ธฐ๋Šฅ๋งŒ ์•Œ๊ณ  ์‚ฌ์šฉํ•˜๋Š” ๋‹จ๊ณ„๋ฅผ ๋„˜์–ด์„œ, ์Šคํ”„๋ง AOP์˜ ๋™์ž‘ ์›๋ฆฌ๋ฅผ ๊นŠ์ด์žˆ๊ฒŒ ์ดํ•ดํ•ด์•ผ ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ๊ทผ๋ณธ์ ์ธ ๋ฌธ์ œ ํ•ด๊ฒฐ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

*๊ฐ•์˜์—์„œ ์ „๋‹ฌํ•˜๋Š” ์Šคํ”„๋ง AOP ๋‚ด์šฉ*

  - ๊ฐœ๋…, ์šฉ์–ด์ •๋ฆฌ
  - ํ”„๋ก์‹œ - JDK ๋™์  ํ”„๋ก์‹œ, CGLIB
  - ๋™์ž‘ ์›๋ฆฌ
  - ์‹ค์ „ ์˜ˆ์ œ
  - ์‹ค๋ฌด ์ฃผ์˜ ์‚ฌํ•ญ

๊ฐ•์˜์—์„œ๋Š” ์Šคํ”„๋ง AOP์˜ ๋‹จ์ˆœํ•œ ๊ธฐ๋Šฅ ์ •๋ฆฌ๋ฅผ ๋„˜์–ด์„œ ๋™์ž‘ ์›๋ฆฌ๋ถ€ํ„ฐ ์‹ค์ „ ์˜ˆ์ œ, ๊ทธ๋ฆฌ๊ณ  ์‹ค๋ฌด์—์„œ ์ž์ฃผ ๋ฐœ์ƒํ•˜๋Š” ์ฃผ์˜ ์‚ฌํ•ญ๊นŒ์ง€ ์Šคํ”„๋ง AOP์˜ ๋ชจ๋“  ๊ฒƒ์„ ์ •๋ฆฌํ•ด๋“œ๋ฆฝ๋‹ˆ๋‹ค.

 

*๊ธฐํƒ€*

์ถ”๊ฐ€๋กœ ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์˜ ๊ณ ๊ธ‰ ๊ธฐ์ˆ ์ธ ๋นˆ ํ›„์ฒ˜๋ฆฌ๊ธฐ์™€ ์Šคํ”„๋ง ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋‹ค์–‘ํ•œ *์‹ค๋ฌด ํŒ*๋„ ์ „ํ•ด๋“œ๋ฆฝ๋‹ˆ๋‹ค.

  - ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์˜ ํ™•์žฅ ํฌ์ธํŠธ - ๋นˆ ํ›„์ฒ˜๋ฆฌ๊ธฐ
  - ์Šคํ”„๋ง ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋‹ค์–‘ํ•œ ์‹ค๋ฌด ํŒ

 

๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ๋‚˜๋ฉด

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

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋Œ“๊ธ€