[TIL/23] 06.21.Wed.

2023. 6. 21. 22:42ใ†โœ๏ธ TIL(Today I Learned)/๐Ÿฐ 2023 Black Rabbit

Today I Studied

  • react์ˆ™๋ จ์ฃผ์ฐจ 1์ฃผ์ฐจ

    • 1-19, 20: React Router Dom
    • 1-21: ๋น„๋™๊ธฐํ”„๋กœ๊ทธ๋žจ ์ž…๋ฌธ
    • 1-22: REST
    • 1-23: JSON๊ณผ ๋น„๋™๊ธฐํ†ต์‹  ์‹ค์Šต
  • PS

    • Programmers/์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต/์—ฐ์Šต๋ฌธ์ œ/Lv1/์ž๋ฆฟ์ˆ˜ ๋”ํ•˜๊ธฐ, ์ง์ˆ˜์™€ ํ™€์ˆ˜
  • TodoList Update

    • ๋ฒ„ํŠผ ์˜ค๋ฅ˜ํ•ด๊ฒฐ
      working container: Complete!-> done container๋กœ ์ด๋™ // delete -> ์‚ญ์ œ
      Done container: back to work -> working container ์ด๋™ // Delete -> ์‚ญ์ œ

Today I Learned

  • react router dom
    • yarn add react-router-dom ๋ช…๋ น์–ด๋กœ ์„ค์น˜
    • ์ƒˆ๋กœ๊ณ ์นจ ์—†์ด SPA ์•ˆ์—์„œ ํŽ˜์ด์ง€ ์ด๋™์ด ๊ฐ€๋Šฅ
  • Dynamic Route: Path์— ์œ ๋™์ ์ธ ๊ฐ’์„ ๋„ฃ์–ด ํŠน์ • ํŽ˜์ด์ง€๋กœ ์ด๋™
  • ๋™๊ธฐ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ(Synchronous Programming): ์ˆœ์ฐจ์ ์œผ๋กœ ์ง„ํ–‰
  • ๋น„๋™๊ธฐ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ(asynchronous Programming): ์ด์ „ ์š”์ฒญ์ด ๋๋‚˜๊ธฐ ์ „์— ๋‹ค์Œ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰
    • setTimeOut()
    • Promise ๊ฐ์ฒด์™€ ๋น„๋™๊ธฐ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ๋งค์šฐ ๋ฐ€์ ‘ํ•จ: API๋ฅผ ํ†ตํ•ด ๋ฐ›์•„์˜จ data๊ฐ€ promise ๊ฐ์ฒด์— ๋‹ด๊น€
    • ์ˆ˜ํ–‰์˜ ์ œ์–ด๊ถŒ์„ ์ œ3์ž์—๊ฒŒ ๋„˜๊ฒจ์ค€ ํ›„ ์ž‘์—…์ด ์™„๋ฃŒ๋˜๋ฉด ์•ˆ๋‚ด๋ฅผ ๋ฐ›์•„ ์ œ์–ด๊ถŒ์„ ์ด์–‘๋ฐ›๋Š” ์‹์˜ ์ผ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•
    • promise ๊ฐ์ฒด์— ๋‹ด๊ธฐ๋Š” ์ฃผ์š” ์ •๋ณด
      1: ๋Œ€๊ธฐ pending
      2: ์ดํ–‰ fulfilled
      1. ๊ฑฐ๋ถ€ rejected
  • REST API: REpresentational State Transfer,
    • ์–ด๋–ค ์ž์›์— ๋Œ€ํ•ด CRUD๋ฅผ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ HTTP Method(GET, POST, PUT, DELETE)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์š”์ฒญ์„ ๋ณด๋‚ด๋Š” ๊ฒƒ,
      ์ด ๋•Œ ์š”์ฒญ์„ ์œ„ํ•œ ์ž์›์„ ํŠน์ •ํ•œ ํ˜•ํƒœ๋กœ ํ‘œํ˜„
    • URI๋กœ ์ •๋ณด์˜ ์ž์›์„ ํ‘œํ˜„ํ•˜๊ณ , ์ž์›์˜ ํ–‰์œ„๋Š” HTTP Method๋กœ ๋ช…์‹œ.
      • ์ž์›(Resource): URI
      • ํ–‰์œ„(Verb): HTTP Method
      • ํ‘œํ˜„(REpresentations)
    • ์˜ˆ์‹œ) GET/users/3/profile
    • ๊ทœ์น™
      ๋ช…์‚ฌ์‚ฌ์šฉ, ์†Œ๋ฌธ์ž ์ž‘์„ฑ
      ๋ช…์‚ฌ๋Š” ๋ณต์ˆ˜ํ˜•
      URI ๋งˆ์ง€๋ง‰ /ํฌํ•จ ์•ˆํ•จ
      URI๋Š” ํ•˜์ดํ”ˆ ์‚ฌ์šฉ
      URI๋Š” ํŒŒ์ผ ํ™•์žฅ์ž ์ƒ๋žต
    • Path variable: ์ „์ฒด ๋ฐ์ดํ„ฐ์—์„œ ๋ฆฌ์†Œ์Šค ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•œ parameter
    • Query Parameter: data์ •๋ ฌ ํ˜น์€ ํ•„ํ„ฐ๋ง ํ•˜๋Š” ๊ฒฝ์šฐ ๋” ์ ํ•ฉํ•จ
  • JSON(JavaScriptObjectionNotation): ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ์ฒด ๋ฌธ๋ฒ•์— ํ† ๋Œ€๋ฅผ ๋‘” ๋ฌธ์ž ๊ธฐ๋ฐ˜์˜ ๋ฐ์ดํ„ฐ ๊ตํ•œ ํ˜•์‹
    • ์„œ๋ฒ„ <--> ํด๋ผ์ด์–ธํŠธ, JSON ํ˜•์‹์œผ๋กœ data๋ฅผ ์ฃผ๊ณ  ๋ฐ›์Œ.
    • ๊ตฌ์กฐ: JS์™€ ์œ ์‚ฌํ•จ, ํฐ ๋”ฐ์˜ดํ‘œ๋งŒ ํ—ˆ์šฉ๋จ.
    • ๋ฉ”์„œ๋“œ
      1. JS object ==> JSON: JSON.stringfy()
      2. JSON ==> JS object: JSON.parse()
-----

# ๐Ÿ•ฐ๏ธ ์˜ค๋Š˜์˜ ๊ณต๋ถ€์‹œ๊ฐ„: 8:51

'โœ๏ธ TIL(Today I Learned) > ๐Ÿฐ 2023 Black Rabbit' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[TIL/23] 06.23.Fri. ~ 06.25.Sun.  (0) 2023.06.26
[TIL/23] 06.22.Thu.  (0) 2023.06.23
[TIL/23]06.20.Tue.  (0) 2023.06.20
[TIL/23] 06.19.Mon.  (0) 2023.06.20
[WIL/23] 06-03: 06.18 ~ 06.18  (0) 2023.06.19