์ธํ”„๋Ÿฐ ์˜๋ฌธ ๋ธŒ๋žœ๋“œ ๋กœ๊ณ 
์ธํ”„๋Ÿฐ ์˜๋ฌธ ๋ธŒ๋žœ๋“œ ๋กœ๊ณ 
BEST

ํ…Œ์ŠคํŠธ์ฃผ๋„๊ฐœ๋ฐœ(TDD)๋กœ ๋งŒ๋“œ๋Š” NodeJS API ์„œ๋ฒ„

์ด ๊ฐ•์˜์—์„œ๋Š” Javascript ์–ธ์–ด๋กœ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋Š” NodeJS๋ฅผ ํ•™์Šตํ•˜๊ณ , ํ…Œ์ŠคํŠธ ์ฃผ๋„ ๊ฐœ๋ฐœ(TDD) ๋ฐฉ๋ฒ•์œผ๋กœ NodeJS๋ฅผ ์ด์šฉํ•ด API ์„œ๋ฒ„ ๊ฐœ๋ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ NodeJS์˜ ๋Œ€ํ‘œ์ ์ธ ์›น ํ”„๋ ˆ์ž„์›Œํฌ ExpressJS์˜ ๊ธฐ์ดˆ ์›๋ฆฌ๋ฅผ ์ดํ•ดํ•˜๊ณ , ๋ชจ๋ฐ”์ผ๊ณผ ์›น ์„œ๋น„์Šค์—์„œ ์‚ฌ์šฉํ•˜๋Š” REST API ๊ฐœ๋ฐœ ๋ฐฉ๋ฒ•์„ ํ•™์Šตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Thumbnail

์ดˆ๊ธ‰์ž๋ฅผ ์œ„ํ•ด ์ค€๋น„ํ•œ
[๋ฐฑ์—”๋“œ, TDD] ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.

์ด๋Ÿฐ ๊ฑธ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์–ด์š”

  • NodeJS ๊ธฐ์ดˆ

  • ํ…Œ์ŠคํŠธ ์ฃผ๋„ ๊ฐœ๋ฐœ(TDD) ๋ฐฉ๋ฒ•

  • ExpressJS ๊ธฐ์ดˆ

  • REST API ์„œ๋ฒ„ ๊ฐœ๋ฐœ

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ๋„ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์„?
NodeJS ์‹ค์Šต์„ ํ†ตํ•ด ๋ฐฐ์šฐ๋Š” ํ…Œ์ŠคํŠธ ์ฃผ๋„ ๊ฐœ๋ฐœ(TDD)

ํ…Œ์ŠคํŠธ ์ฃผ๋„ ๊ฐœ๋ฐœ๋กœ ๋งŒ๋“œ๋Š”
NodeJS API ์„œ๋ฒ„

์ด ๊ฐ•์˜์—์„œ๋Š” ํ…Œ์ŠคํŠธ ์ฃผ๋„ ๊ฐœ๋ฐœ(TDD) ๋ฐฉ๋ฒ•์œผ๋กœ NodeJS๋ฅผ ์ด์šฉํ•ด API ์„œ๋ฒ„ ๊ฐœ๋ฐœ์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ Javascript ๋กœ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ๋Š” NodeJS์™€ ๋Œ€ํ‘œ์ ์ธ ์›น ํ”„๋ ˆ์ž„์›Œํฌ ExpressJS์˜ ๊ธฐ์ดˆ ์›๋ฆฌ๋ฅผ ์ดํ•ดํ•˜๊ณ , ๋ชจ๋ฐ”์ผ๊ณผ ์›น ์„œ๋น„์Šค์—์„œ ์‚ฌ์šฉํ•˜๋Š” REST API ๊ฐœ๋ฐœ ๋ฐฉ๋ฒ•์„ ํ•™์Šต์„ ํ•ฉ๋‹ˆ๋‹ค.

ํ•™์Šต ๋ชฉํ‘œ ๐Ÿ”

  • NodeJS๋ฅผ ์ด์šฉํ•ด์„œ API ์„œ๋ฒ„๋ฅผ ๋งŒ๋“ ๋‹ค.
  • ํ…Œ์ŠคํŠธ ์ฃผ๋„ ๊ฐœ๋ฐœ ๋ฐฉ๋ฒ•์„ ์ตํžŒ๋‹ค.

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

ํ•™์Šต ๋‚ด์šฉ ๐Ÿ”

์ด ๊ฐ•์˜๋ฅผ
์ด๋Ÿฐ ๋ถ„๋“ค๊ป˜ ์ถ”์ฒœํ•ด์š”

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ
API ์„œ๋ฒ„๋ฅผ ๊ฐœ๋ฐœ
ํ•˜๊ณ  ์‹ถ์œผ์‹  ๋ถ„

ํ…Œ์ŠคํŠธ ์ฃผ๋„ ๊ฐœ๋ฐœ
(TDD)์„ ์‹ค๋ฌด์—
์ ์šฉํ•˜๊ณ  ์‹ถ์€ ๋ถ„

NodeJS, ExpressJS
์˜ ์‹ค๋ฌด์  ์‚ฌ์šฉ๋ฒ•์„
ํ•™์Šตํ•˜๊ณ  ์‹ถ์€ ๋ถ„

Javascript ๊ฐœ๋ฐœ์ž


์ด ๊ฐ•์˜์—๋Š”
์ด๋Ÿฐ ํŠน์ง•์ด ์žˆ์–ด์š”

  • ์›น ๊ฐœ๋ฐœ ์ดˆ์ค‘๊ธ‰ ๋‚œ์ด๋„
  • ํ…Œ์ŠคํŠธ ์ฃผ๋„ ๊ฐœ๋ฐœ์ด ์‹ค์ œ ๊ฐœ๋ฐœ์—์„œ ์–ด๋–ป๊ฒŒ ์ ์šฉ ๋˜๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์Œ

๐Ÿ“ข ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค

  • ํ•ด๋‹น ๊ฐ•์˜์˜ ์‹ค์Šต ์ฝ”๋“œ์™€ ์Šฌ๋ผ์ด์Šค๋Š” ๊นƒํ—ˆ๋ธŒ์— ๊ณต๊ฐœ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๊ฐ•์˜์˜
์ง€์‹๊ณต์œ ์ž๋Š”

๊น€์ •ํ™˜

  • ํ˜„ ์šฐ์•„ํ•œํ˜•์ œ๋“ค ๊ฐœ๋ฐœ์ž
  • ์œ„ํ”Œ๋ž˜๋‹› ๊ฐœ๋ฐœ์ž
  • ๋ธ”๋กœ๊ทธ : https://jeonghwan-kim.github.io/

์ด๋Ÿฐ ๋ถ„๋“ค๊ป˜
์ถ”์ฒœ๋“œ๋ ค์š”!

ํ•™์Šต ๋Œ€์ƒ์€
๋ˆ„๊ตฌ์ผ๊นŒ์š”?

  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ API ์„œ๋ฒ„๋ฅผ ๊ฐœ๋ฐœํ•˜๊ณ  ์‹ถ์œผ์‹  ๋ถ„

  • ํ…Œ์ŠคํŠธ ์ฃผ๋„ ๊ฐœ๋ฐœ(TDD)์„ ์‹ค๋ฌด์— ์ ์šฉํ•ด ๋ณด๊ณ  ์‹ถ์€ ๋ถ„

  • NodeJS, ExpressJS์˜ ์‹ค๋ฌด์  ์‚ฌ์šฉ๋ฒ•์„ ํ•™์Šตํ•˜๊ณ  ์‹ถ์€ ๋ถ„

  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐœ๋ฐœ์ž

์„ ์ˆ˜ ์ง€์‹,
ํ•„์š”ํ• ๊นŒ์š”?

  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ

์•ˆ๋…•ํ•˜์„ธ์š”
๊น€์ •ํ™˜์ž…๋‹ˆ๋‹ค.

13,304

๋ช…

์ˆ˜๊ฐ•์ƒ

822

๊ฐœ

์ˆ˜๊ฐ•ํ‰

580

๊ฐœ

๋‹ต๋ณ€

4.8

์ 

๊ฐ•์˜ ํ‰์ 

9

๊ฐœ

๊ฐ•์˜

๐Ÿ‘‹๐Ÿผ ์•ˆ๋…•ํ•˜์„ธ์š” ์ธํ”„๋Ÿฐ์—์„œ ๊ฐ•์˜ํ•˜๋Š” ๊น€์ •ํ™˜์ž…๋‹ˆ๋‹ค.

์ˆ˜์—… ์ค‘ ๊ถ๊ธˆํ•œ ์‚ฌํ•ญ์€ ์งˆ๋ฌธ ์‚ฌํ•ญ์— ์˜ฌ๋ ค์ฃผ์„ธ์š”.
๋งค์ผ ํ•œ ๋ฒˆ์”ฉ ํ™•์ธํ•˜๊ณ  ๋‹ต๋ณ€ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

์ปค๋ฆฌํ˜๋Ÿผ

์ „์ฒด

60๊ฐœ โˆ™ (3์‹œ๊ฐ„ 49๋ถ„)

ํ•ด๋‹น ๊ฐ•์˜์—์„œ ์ œ๊ณต:

์ˆ˜์—…์ž๋ฃŒ
๊ฐ•์˜ ๊ฒŒ์‹œ์ผ: 
๋งˆ์ง€๋ง‰ ์—…๋ฐ์ดํŠธ์ผ: 

์ˆ˜๊ฐ•ํ‰

์•„์ง ์ถฉ๋ถ„ํ•œ ํ‰๊ฐ€๋ฅผ ๋ฐ›์ง€ ๋ชปํ•œ ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.
๋ชจ๋‘์—๊ฒŒ ๋„์›€์ด ๋˜๋Š” ์ˆ˜๊ฐ•ํ‰์˜ ์ฃผ์ธ๊ณต์ด ๋˜์–ด์ฃผ์„ธ์š”!