๐Ÿ’ญ [ ๊ณผ์ œ ๊ธฐ๋ก ] - TodoList ๋งŒ๋“ค๊ธฐ (JavaScript)

์ •์€ยท2024๋…„ 1์›” 30์ผ

๐Ÿ’ญ ๊ธฐ๋ก

๋ชฉ๋ก ๋ณด๊ธฐ
2/2

TodoList ๊ณผ์ œ๋กœ ๋„ค์ด๋ฒ„๋ฅผ ๋ฒค์น˜๋งˆํ‚นํ•œ ํˆฌ๋‘๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ณผ์ •์—์„œ์˜ ๊ฒฝํ—˜๊ณผ ๋А๋‚€ ์ ์„ ๊ณต์œ ํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“Œ ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ

์ด ํ”„๋กœ์ ํŠธ๋Š” ๋„ค์ด๋ฒ„๋ฅผ ๋ฒค์น˜๋งˆํ‚นํ•˜์—ฌ ๊ตฌํ˜„ํ•œ ํˆฌ๋‘๋ฆฌ์ŠคํŠธ๋กœ ๊ฐ„๋‹จํ•œ ๊ธฐ๋Šฅ๋“ค์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž๊ฐ€ ํŽธ๋ฆฌํ•˜๊ฒŒ ํ•  ์ผ์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๋””์ž์ธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ œ์ž‘ ๊ธฐ๊ฐ„์€ 2023.12.22 ~ 2024.01.12 ์˜€๊ณ , ์ด๋ฅผ ๋ฐฐํฌํ•œ ์‚ฌ์ดํŠธ๋Š” Naver TodoList ์—์„œ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํ”„๋กœ์ ํŠธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฃผ์š” ๊ธฐ๋Šฅ๊ณผ ํŠน์ง•์„ ๊ฐ–์ถ”๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค:

  1. ํ•  ์ผ ๋ชฉ๋ก ํŽ˜์ด์ง€
    • Home ํŽ˜์ด์ง€์—์„œ ๋ชจ๋“  ํ•  ์ผ ๋ชฉ๋ก์„ ํ•œ๋ˆˆ์— ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  1. ์‚ฌ์šฉ์ž ์†Œ๊ฐœ ํŽ˜์ด์ง€

    • ๊ฐ„๋‹จํ•œ Naver ๊ธฐ์—… ์†Œ๊ฐœ์™€ ๊ฐœ๋ฐœ์ž ์†Œ๊ฐœ๊ฐ€ ๋‹ด๊ธด About ํŽ˜์ด์ง€๊ฐ€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.
  2. ํ•  ์ผ ํ•ญ๋ชฉ ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œ (CRUD)

    • REST API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž๋Š” ๊ฐ„๋‹จํ•œ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ํ•  ์ผ์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •, ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  3. ํ•  ์ผ ์™„๋ฃŒ ์—ฌ๋ถ€ ๊ตฌ๋ถ„

    • ์™„๋ฃŒ๋˜์ง€ ์•Š์€ ํ•ญ๋ชฉ๊ณผ ์™„๋ฃŒ๋œ ํ•ญ๋ชฉ์ด ์‹œ๊ฐ์ ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ๋ชฉ๋ก์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  4. Modal ์ฐฝ

    • ๊ฐ ํˆฌ๋‘ ์•„์ดํ…œ์„ ํด๋ฆญํ•˜๋ฉด ํ•ด๋‹น ์•„์ดํ…œ์˜ ์ƒ์„ธ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•˜๋Š” Modal ์ฐฝ์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.
    • ํ•ด๋‹น ํˆฌ๋‘ ์•„์ดํ…œ์˜ ์ƒ์„ฑ์ผ๊ณผ ์ตœ์‹  ์ˆ˜์ •์ผ์ด ํ‘œ์‹œ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
    • ํ•ด๋‹น ํˆฌ๋‘ ์•„์ดํ…œ์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.
  5. ๋กœ๋”ฉ ์• ๋‹ˆ๋ฉ”์ด์…˜

    • ํ•  ์ผ ํ•ญ๋ชฉ ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œ ์ค‘ ๊ฐ„๋‹จํ•œ ๋กœ๋”ฉ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž์—๊ฒŒ ์ง„ํ–‰ ์ƒํ™ฉ์„ ์‹œ๊ฐ์ ์œผ๋กœ ์•Œ๋ ค์ค๋‹ˆ๋‹ค.

๐Ÿ’ก ๋ถ€์กฑํ•œ ๋ถ€๋ถ„ : ๋‹น์‹œ ๊ตฌํ˜„ํ•˜๊ณ  ์‹ถ์—ˆ์ง€๋งŒ, ํ•˜์ง€ ๋ชปํ•œ ๊ธฐ๋Šฅ๋“ค๊ณผ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ช‡๊ฐ€์ง€ ์žˆ์Šต๋‹ˆ๋‹ค(e.g., ์™„๋ฃŒํ•ญ๋ชฉ๋งŒ ์‚ญ์ œ, skeleton). ๋ฆฌํŒฉํ† ๋ง์„ ํ•˜๋ฉฐ ์ˆ˜์ •ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค!


๐Ÿ’ญ ์–ด๋ ค์› ๋˜ ๋ถ€๋ถ„ / ๋А๋‚€ ์ 

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

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

0๊ฐœ์˜ ๋Œ“๊ธ€