TIL

[WIL] ์ถ”์„ ์—ฐํœด ๋ฐฉํ•™ ์ฃผ๊ฐ„ ํšŒ๊ณ 

lado 2021. 9. 29. 18:07

๐Ÿ“ ์ด๋ฒˆ ์ฃผ์— ํ•˜๊ณ ์ž ํ–ˆ๋˜ ๊ฒƒ

  • [๊ณผ์ œ] CSS ํด๋ก ์ฝ”๋”ฉ(์œ ํŠœ๋ธŒ, ์ž์œ  ์„ ํƒ) ๊ณผ์ œ
  • [Javascript] ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ 7๋ฒˆ๊นŒ์ง€ ์™„์„ฑ ๋ฐ ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ ๋ฐฐํฌ
  • [ํ”„๋กœ์ ํŠธ] ๋…ธ์…˜ ํด๋ก ์ฝ”๋”ฉ ํ”„๋กœ์ ํŠธ ๋ฆฌํŒฉํ† ๋ง ํ›„ ๋ฐฐํฌ
  • [์•Œ๊ณ ๋ฆฌ์ฆ˜] ๊ทธ๋ž˜ํ”„, DFS & BFS ๊ฐœ๋… ๊ฐ•์˜ ๋“ฃ๊ณ  ์ดํ•ดํ•˜๊ธฐ
  • [๊ฐ•์˜] Vue ๊ฐ•์˜ ๋“ฃ๊ธฐ
  • [๋ฒˆ์™ธ ๊ฐ•์˜] ํ”ผ๊ทธ๋งˆ ์ง€์‹๋‚˜๋ˆ” ๊ฐ•์˜ ๋“ฃ๊ธฐ
  • [๋ฒˆ์™ธ ๊ฐ•์˜] ๋„์ปค ๊ฐ•์˜ ๋“ฃ๊ธฐ
  • [๋ณต์Šต] ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์‹ค์Šต ๋ชปํ•œ ๊ฑฐ ํ•˜๊ธฐ
  • [๋ณต์Šต] ๊ทธ๋™์•ˆ ๋ชป ๋“ค์€ ๊ฐ•์˜ ๋“ฃ๊ธฐ
  • [๋ณต์Šต] ์ œ๋Œ€๋กœ ์ดํ•ด ๋ชปํ•œ ๊ฐ•์˜ ๋ณต์Šตํ•˜๊ธฐ
  • [JS ๊ฐœ๋…] ์‹คํ–‰ ์ปจํ…์ŠคํŠธ ์ดํ•ด
  • [์ฝ”๋“œ ๋ฆฌ๋ทฐ] ๋‹ค๋ฅธ ์ˆ˜๊ฐ•์ƒ PR๊ณผ ์ฝ”๋“œ ๋ฆฌ๋ทฐ ์ฝ๊ธฐ
  • [์ฝ”๋“œ ๋ฆฌ๋ทฐ] Todo app ๊ณผ์ œ, ๋…ธ์…˜ ํด๋ก ์ฝ”๋”ฉ ๊ณผ์ œ ์ฝ”๋“œ, ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ ๋ฆฌ๋ทฐํ•˜๊ธฐ
  • [TIL] ์กฐ๊ธˆ์ด๋ผ๋„ ์ƒˆ๋กœ ๋ฐฐ์šด ๋‚ด์šฉ์€ ๋งค์ผ ๋งค์ผ ์ •๋ฆฌํ•˜๊ธฐ

 


๐ŸŽฏ ์ด๋ฒˆ ์ฃผ์— ์™„๋ฃŒํ•œ ๊ฒƒ

  • ํ•œ ๊ฒƒ
    • Javascript ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ ๊ณผ์ œ ์™„์„ฑ ๋ฐ ํ”„๋กœ์ ํŠธ ๋ชจ์•„๋†“์€ SPA ๋ฐฐํฌ [๋งํฌ]
    • 6์ฃผ์ฐจ ๊ณผ์ œ ์ฝ”๋“œ ๋ฆฌ๋ทฐ
    • ๋„์ปค ๊ฐ•์˜ ๋“ฃ๊ธฐ
    • Udemy JavaScript๋กœ ์ƒํƒœ ๊ด€๋ฆฌ app ๋งŒ๋“ค๊ธฐ ๊ฐ•์˜ ๋“ฃ๊ธฐ
    • ํŒจ์บ  Github ๋ฉ”์ธ ํŽ˜์ด์ง€ ๋งˆํฌ์—… ํด๋ก ์ฝ”๋”ฉ ๊ฐ•์˜ ๋“ฃ๊ธฐ
    • ์œ ํŠœ๋ธŒ ๋ฉ”์ธ ํŽ˜์ด์ง€ CSS ํด๋ก  ์ฝ”๋”ฉ

 

  • ์•„์‰ฌ์› ๋˜ ๊ฒƒ
    • ์šฐ์„ ์ˆœ์œ„ ๋ถ„๋ฐฐ๋ฅผ ์ž˜๋ชปํ•ด์„œ ๊ณผ์ œ ๋ชป ๋๋ƒ„...
    • ๊ฐ•์˜ ๋„ˆ๋ฌด ๋ฐ€๋ฆฐ ๊ฒƒ...
    • ์ฝ”๋“œ ๋ฆฌ๋ทฐ ๋˜ ์•ˆ ํ•œ ๊ฒƒ...
    • TIL ์•ˆ ์“ด ๊ฒƒ...

 


๐Ÿ“š ๋‹ค์Œ ์ฃผ์— ํ•  ๊ฒƒ

  • [๊ฐ•์˜] ๋ฐ€๋ฆฌ์ง€ ์•Š๊ณ  ๊ฐ•์˜ ์ œ๋•Œ ์ œ๋•Œ ๋“ฃ๊ธฐ
  • [๊ณผ์ œ] CSS ํด๋ก ์ฝ”๋”ฉ(์œ ํŠœ๋ธŒ, ์ž์œ  ์„ ํƒ) ๊ณผ์ œ ๋๋‚ด๊ธฐ
  • [๊ณผ์ œ] Vue ๊ณผ์ œ
  • [Javascript] ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ ์Šคํ„ฐ๋””
  • [CS ๊ธฐ์ดˆ] ์Šคํ„ฐ๋”” ๋ฐœํ‘œํ•˜๊ธฐ
  • [์•Œ๊ณ ๋ฆฌ์ฆ˜] ๊ทธ๋ž˜ํ”„, DFS & BFS ๊ฐœ๋… ๊ฐ•์˜ ๋“ฃ๊ณ  ์ดํ•ดํ•˜๊ธฐ
  • [๋ณต์Šต] Vanilla JS ๊ฐ•์˜
  • [๋ฒˆ์™ธ ๊ฐ•์˜] ํ”ผ๊ทธ๋งˆ ์ง€์‹๋‚˜๋ˆ” ๊ฐ•์˜ ๋‹ค์‹œ๋“ฃ๊ธฐ
  • [JS ๊ฐœ๋…] ์‹คํ–‰ ์ปจํ…์ŠคํŠธ ์ดํ•ด
  • [์ฝ”๋“œ ๋ฆฌ๋ทฐ] CSS ๊ณผ์ œ ์ฝ”๋“œ ๋ฆฌ๋ทฐํ•˜๊ธฐ
  • [TIL] ์กฐ๊ธˆ์ด๋ผ๋„ ์ƒˆ๋กœ ๋ฐฐ์šด ๋‚ด์šฉ์€ ๋งค์ผ ๋งค์ผ ์ •๋ฆฌํ•˜๊ธฐ

 


๐ŸŽ‡ Reflection

  • Javascript ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ
    • ์ด๊ฒŒ ๋‚ด ์—ฐํœด๋ฅผ ์•—์•„๊ฐ„ ์ฃผ๋ฒ”์ด๋‹ค. ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ ์Šคํ„ฐ๋”” ๋งˆ๊ฐ์ด ์ถ”์„ ์—ฐํœด ์ฃผ๊ฐ„์ธ ์ค„ ์‚ฌ์‹ค ๋ชจ๋ฅด๊ณ  ์žˆ์—ˆ๋‹ค. ์›”์š”์ผ๋ถ€ํ„ฐ CSS ๊ณผ์ œ๋ฅผ ์‹œ์ž‘ํ•ด์„œ ํ˜ธ๊ธฐ๋กญ๊ฒŒ ์ดํ‹€๋งŒ์—(;;) ๋๋‚ด๊ฒ ๋‹ค๋Š” ์ƒ๊ฐํ•˜๊ณ  ์žˆ์—ˆ๋Š”๋ฐ, ๊ณ ํ–ฅ์— ๋‚ด๋ ค๊ฐ„ ๊น€์— ๊ด‘์ฃผ์— ์žˆ๋Š” ํ”„๋กฑ์ด๋ถ„์ด๋ž‘ ์ •๋ชจํ•˜๋ฉด์„œ ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ ์Šคํ„ฐ๋”” ๋งˆ๊ฐ์ด ํ™”์š”์ผ๊นŒ์ง€๋ผ๋Š” ์‚ฌ์‹ค์„ ์•Œ๊ฒŒ ๋๋‹ค. ์‹œ์ž‘ํ•  ๋•Œ๋งŒ ํ•˜๋”๋ผ๋„ ๊ธˆ๋ฐฉ ๋๋‚ด๊ณ  ๊ณผ์ œ๋ฅผ ์‹œ์ž‘ํ•  ์ƒ๊ฐ์ด์—ˆ๋Š”๋ฐ... ํ”„๋กฑ์ด๋ถ„์ด ESlint ์„ค์ •์„ ๊ณต์œ ํ•ด์ฃผ์…”์„œ ๊ทธ๊ฑธ ์ ์šฉํ•ด์„œ ๋ฆฌํŒฉํ† ๋งํ•˜๋ ค๋‹ค ๊ทธ๋งŒ... ESlint๋กœ ์‚ฝ์งˆ ์ข€ ํ•˜๊ณ ... ์ „๋ถ€ํ„ฐ ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ๋ฅผ ํ•œ ๊ณณ์— ๋ชจ์•„์„œ ๋ฐฐํฌํ•˜๊ณ  ํ•˜๊ณ  ์‹ถ์—ˆ์–ด์„œ ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ ์„ค๊ณ„(?)ํ•˜๋Š” ๊ฑธ๋กœ ์‚ฝ์งˆ ์ข€ ํ•˜๊ณ ... ์ด๋Ÿฌ๋‹ค ๊ฐ์ด ์ž˜ ์•ˆ ์™€์„œ ์ „์— ๊ฒฐ์ œํ•ด๋’€๋˜ Udemy ๊ฐ•์˜๋„ ๋ดค๋‹ค...
    • ์ด๋ฏธ์ง€ ์Šฌ๋ผ์ด๋“œ๋ฅผ unsplash api์—์„œ ์ด๋ฏธ์ง€๋ฅผ ๋žœ๋คํ•˜๊ฒŒ ๋ฐ›์•„์™€์„œ ๋งŒ๋“œ๋Š” ๊ฒƒ์œผ๋กœ๋„ ์‚ฝ์งˆ์„ ํ–ˆ๋‹ค. ์ฒ˜์Œ์— ๋‹ค์Œ ์Šฌ๋ผ์ด๋“œ๋กœ ๋„˜๊ธฐ๋Š” ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ์ „์ฒด ์Šฌ๋ผ์ด๋“œ์˜ ๊ฐœ์ˆ˜๋ฅผ document.querySelector(".slide").length ๋Œ€์ถฉ ์ด๋Ÿฐ ์‹์œผ๋กœ ๊ณ„์‚ฐํ•˜๋Š”๋ฐ ์ด๊ฒŒ document.querySelector(".slide")๊ฐ€ ๋งŒ๋“ค์–ด์ง€๊ธฐ ์‹คํ–‰๋ผ์„œ... ํ•˜.. ์ด๊ฒƒ์„ ํ•ด๊ฒฐํ•˜๋ ค๋‹ค ํฌ๊ธฐํ•˜๊ธฐ ์ง์ „๊นŒ์ง€ ๊ฐ”๋Š”๋ฐ setTimeout(() => showSlides(slideIndex), 0); ์ด๋Ÿฐ ์‹์œผ๋กœ webAPI๋ฅผ ๊ฑธ์–ด์ค˜์„œ ์Šฌ๋ผ์ด๋“œ๋ฅผ ๋ Œ๋”๋งํ•˜๋Š” ์ž‘์—…์ด ๋๋‚˜๊ณ  showSlides() ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋  ์ˆ˜ ์žˆ๊ฒŒ๋” ํ—€๋”๋‹ˆ ๋˜๊ธด ๋๋‹ค. ๊ทผ๋ฐ SPA์— ์—ฐ๊ฒฐํ•˜๋‹ˆ๊นŒ ๋˜ ๋ฌธ์ œ๊ฐ€ ์žˆ์–ด์„œ ์ด ๋ถ€๋ถ„์„ this.init() ์•ˆ์— ๋„ฃ๊ณ  SPA์— ์—ฐ๊ฒฐํ•  ๋•Œ init()๋ฅผ ์‹คํ–‰ํ•˜๊ฒŒ ํ•˜๋‹ˆ ๋˜ ๋˜๊ธด ๋๋‹ค... ์ •๋ง ๋งŽ์€ ๊ฒƒ์„ ๋ฐฐ์šฐ๊ธด ํ–ˆ๋Š”๋ฐ... ๋ชฉ์š”์ผ๊นŒ์ง„๊ฐ€ ์ด๊ฒƒ๋งŒ ์ž‘์—…ํ–ˆ๋‹ค... ๊ทธ๋ž˜๋„ ๋ฐฐํฌํ•˜๋‹ˆ๊นŒ ๋ฟŒ๋“ฏํ•˜๊ธด ํ–ˆ๋‹ค. vercel๋กœ ํ–ˆ๋Š”๋ฐ ์ง„์งœ ๋ผ์šฐํŒ… ์„ค์ •ํ•ด์ฃผ๋Š” ํŒŒ์ผ ๋„ฃ๊ณ  ๋ฒ„ํŠผ ํ•œ ๋ฒˆ ๋ˆ„๋ฅด๋Š” ์ •๋„๋กœ ๋ฐฐํฌ๊ฐ€ ๋ผ์„œ ์‹ ๊ธฐํ–ˆ๋‹ค.

 

  • ๋ฉ˜ํ† ๋‹˜๊ป˜์„œ ๋‹ค๋ฅธ ํŒ€์›๋ถ„๊ป˜ ๋‚จ๊ธด ์ฝ”๋“œ ๋ฆฌ๋ทฐ์— ์ข‹์€ ๋‚ด์šฉ์ด ์žˆ์–ด ์ •๋ฆฌํ•จ
    • EOL๊ณผ EOF
      • github์—์„œ ํŒŒ์ผ์˜ ๋งˆ์ง€๋ง‰ ์ค„์— ๊ฐœํ–‰์„ ์•ˆํ•ด์ฃผ๋ฉด โ›”์™€ ๊ฐ™์€ ์•„์ด์ฝ˜์„ ๋„์šฐ๋Š”๋ฐ, ์ด๊ฒƒ์„ EOL์ด๋ผ๊ณ ๋„ ํ•˜๊ณ  EOF๋ผ๊ณ ๋„ ํ•œ๋‹ค๊ณ  ์ดํ•ดํ•˜๊ณ  ์žˆ์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ฉ˜ํ† ๋‹˜๊ป˜์„œ EOL(End Of Line)์€ line์˜ ๋์„ ์•Œ๋ฆฌ๋Š” ๋ฌธ์ž, EOF(End Of File)๋Š” file์˜ ๋์„ ์•Œ๋ฆฌ๋Š” ๋ฌธ์ž๋ผ๋Š” ์˜๋ฏธ๋กœ ๋‹ค๋ฅธ ๊ฐœ๋…์ด๋ผ๊ณ  ์•Œ๋ ค์ฃผ์…จ๋‹ค. ๋ฆฌ๋ˆ…์Šค์—์„œ๋Š” LF, ๋งฅ์—์„œ๋Š” CR, ์œˆ๋„์šฐ์—์„œ๋Š” CR+LF์™€ ๊ฐ™์€ ๋ฌธ์ž๋ฅผ ํ†ตํ•ด ์ค„๋ฐ”๊ฟˆ์„ ์ธ์‹ํ•˜๋Š”๋ฐ, ์ด๊ฒŒ EOL์ด๋ผ๊ณ  ํ•œ๋‹ค. ๋ฐ˜๋ฉด์— ์ž…๋ ฅ ์ŠคํŠธ๋ฆผ์œผ๋กœ ํŒŒ์ผ์„ ์ฝ๋‹ค๊ฐ€ ํŒŒ์ผ์˜ ๋์— ๋„๋‹ฌํ•˜๋ฉด ๋งˆ์ง€๋ง‰์œผ๋กœ ์ฝ๋Š” ๋ฌธ์ž๊ฐ€ EOF์ธ ๊ฑด๋ฐ, ์ด EOF๋ฅผ ํ†ตํ•ด ํŒŒ์ผ์„ ๋‹ค ์ฝ์—ˆ๋‹ค๋Š” ํŒ๋‹จ์„ ํ•˜๋Š” ๊ฑฐ๋ผ๊ณ . โ›” ์•„์ด์ฝ˜์„ ๋„์šฐ๋Š” ๊ฒƒ์€ EOF๋Š” EOL๋กœ ๋๋‚ด๋ผ๋Š” ๊ถŒ๊ณ ์‚ฌํ•ญ(POSIX Standard์— ์ •์˜๋˜์–ด ์žˆ์Œ) ๋•Œ๋ฌธ์ด๋‹ค. C์—์„œ ๋ฌธ์ž์—ด์„ ๋ฉ”๋ชจ๋ฆฌ์— ํ• ๋‹นํ•  ๋•Œ, ๋ฌธ์ž์—ด์˜ ๋์„ ์ถ”์ ํ•˜๊ธฐ ์œ„ํ•ด NULL ์ข…๋‹จ ๋ฌธ์ž๋ฅผ ๋ถ™์ด๋Š” ๊ฒƒ๊ณผ ๋น„์Šทํ•œ ๊ฑฐ๋ผ๊ณ  ์นœ์ ˆํ•˜๊ฒŒ ์„ค๋ช…ํ•ด์ฃผ์…จ๋‹ค!
    • ๊ฐ์ฒด ๊ฐ’ ๋น„๊ตํ•˜๊ธฐ
      • ๊ฐ์ฒด๋Š” ์ฐธ์กฐํ˜• ์ž๋ฃŒํ˜•์ด๊ธฐ ๋•Œ๋ฌธ์— ์›์‹œํ˜• ์ž๋ฃŒํ˜•์ฒ˜๋Ÿผ ๋‹จ์ˆœํžˆ === ์—ฐ์‚ฐ์ž๋กœ ๋น„๊ตํ•  ์ˆ˜ ์—†๋‹ค.
      • JSON.stringify()๋กœ ๊ฐ์ฒด๋ฅผ ์ŠคํŠธ๋ง์œผ๋กœ ๋งŒ๋“ค์–ด์„œ ๋น„๊ตํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๊ฐ™์€ ๋ฐ์ดํ„ฐ์ธ๋ฐ๋„ ๊ฐ์ฒด ์•ˆ์˜ ๋ฐ์ดํ„ฐ ์ˆœ์„œ๊ฐ€ ๋‹ค๋ฅธ ๊ฒฝ์šฐ, ์„œ๋กœ ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ๋กœ ์ธ์‹ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€๋Šฅ์„ฑ(์ด ๋ถ€๋ถ„์€ string์œผ๋กœ ๋ฐ”๊พธ๊ธฐ ์ „์— sort๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ•ด๊ฒฐ์€ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ...)๋„ ์žˆ๊ณ , ์‚ฌ์‹ค ์„ฑ๋Šฅ๋„ ์ข‹์€ ๊ฒŒ ์•„๋‹ˆ๋ผ ์‹ค์ œ๋กœ ์ด์šฉํ•˜๋Š” ๊ฒฝ์šฐ๋Š” ์ž˜ ์—†๋‹ค๊ณ  ํ•œ๋‹ค. ๋ณดํ†ต ๋ถˆ๋ณ€์„ฑ์„ ์ง€์ผœ์„œ shallow compare ๋งŒ์œผ๋กœ ๋ณ€๊ฒฝ์„ ์ธ์‹ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ฑฐ๋‚˜ ์˜ต์ €๋ฒ„, pub/sub ํŒจํ„ด์„ ํ™œ์šฉํ•ด์„œ ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค๊ณ  ๋ฉ˜ํ† ๋‹˜๊ป˜์„œ ์•Œ๋ ค์ฃผ์…จ๋Š”๋ฐ ์ด ๋ถ€๋ถ„์€ ๋” ๊ณต๋ถ€ํ•ด๋ด์•ผ ํ•  ๊ฒƒ ๊ฐ™๋‹ค.
    • ์ด๋ฒคํŠธ๋ฅผ ์–ด๋””์— ์ •์˜ํ•˜๋Š” ๊ฒŒ ํ•ฉ๋ฆฌ์ ์ผ๊นŒ?
      • ๋ฐฑ์ŠคํŽ˜์ด์Šค ํ‚ค๋ฅผ ๋ˆ„๋ฅด๋ฉด ๋’ค๋กœ ๊ฐ€๋Š” ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•  ๋•Œ, ์ด๋ฒคํŠธ๋ฅผ Nodes ์ปดํฌ๋„ŒํŠธ์— ์ •์˜ํ•˜๋Š” ๊ฒŒ ์ข‹์„์ง€ ๊ทธ ์ƒ์œ„ ์ปดํฌ๋„ŒํŠธ์ธ App ์ปดํฌ๋„ŒํŠธ์— ์ •์˜ํ•˜๋Š” ๊ฒŒ ์ข‹์„์ง€์— ๋Œ€ํ•œ ๊ณ ๋ฏผ์ด ์žˆ์—ˆ๋‹ค. ์ด์— ๋Œ€ํ•ด ๋ฉ˜ํ† ๋‹˜์€ ๋ชจ๋“ˆ์„ ๊ตฌ์„ฑํ•  ๋•Œ๋Š” ๊ณตํ•™์ ์œผ๋กœ ์‘์ง‘๋„์™€ ๊ฒฐํ•ฉ๋„๋ฅผ ๊ณ ๋ คํ•ด์•ผ ํ•˜๋Š”๋ฐ, ์‘์ง‘๋„๋กœ ๋ดค์„ ๋•Œ๋Š” Nodes ์ปดํฌ๋„ŒํŠธ์— ์ •์˜ํ•˜๋Š” ๊ฒŒ ํ•ฉ๋ฆฌ์ ์ผ ๊ฒƒ ๊ฐ™๋‹ค๊ณ  ๋‹ต๋ณ€ ์ฃผ์…จ๋‹ค. ๋‹ค๋งŒ, ์—ฌ๋Ÿฌ ๋ฒˆ ์ƒ์„ฑ๋˜๋Š” ์ปดํฌ๋„ŒํŠธ๋ผ์„œ ์ด๋ฒคํŠธ ๋“ฑ๋ก์ด ์ค‘๋ณตํ•ด์„œ ์ผ์–ด๋‚  ๊ฒƒ ๊ฐ™๋‹ค๋ฉด container ๋“ฑ์œผ๋กœ ๋ž˜ํ•‘ํ•ด์„œ ์ƒ์œ„ ์ปดํฌ๋„ŒํŠธ์—์„œ ์ด๋ฒคํŠธ๋ฅผ ๋“ฑ๋กํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค๊ณ .

 

  • ์œ ํŠœ๋ธŒ CSS ํด๋ก ์ฝ”๋”ฉ
    • CSS ํด๋ก ์ฝ”๋”ฉ ๊ณผ์ œ๊ฐ€ ์ผ์š”์ผ๊นŒ์ง€์˜€๋Š”๋ฐ ์ผ์š”์ผ์— ์‹œ์ž‘ํ–ˆ๋‹ค ใ…Ž ๋„ˆ๋ฌด ์•ˆ์ผํ•˜๊ฒŒ ์ƒ๊ฐํ•œ ๊ฒƒ๋„ ์žˆ์ง€๋งŒ ๋งˆํฌ์—… ๊ตฌํ˜„์„ ์„ธ์„ธํ•˜๊ฒŒ ํ•ด๋ณธ ๊ฒŒ ์ข€ ์˜ค๋ž˜ ์ „ ์ผ์ด๊ณ  ์ด์ „์— ์ผํ•œ ์ง๋ฌด๊ฐ€ ์‚ฌ์‹ค์ƒ '์›น' ํผ๋ธ”๋ฆฌ์‹ฑ์ด๋ผ๊ณ  ๋งํ•  ์ˆ˜ ์—†๋Š” ๊ณณ์ด์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ œ๋Œ€๋กœ ๋ฉ”ํƒ€ ํƒœ๊ทธ ๋„ฃ๊ณ , reset.css ์ ์šฉํ•˜๊ณ , ๋ฒค๋” ํ”„๋ฆฌํ”ฝ์Šค ๋„ฃ๊ณ  ํ•˜๋ฉด์„œ ๋งˆํฌ์—… ํ•ด๋ณธ ์ ์ด ์—†์–ด์„œ ์ด๋ฒˆ์— ์ œ๋Œ€๋กœ ํผ๋ธ”๋ฆฌ์‹ฑ ํ•ด๋ณด๊ณ  ์‹ถ์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์•ˆ ๋“ค์€์ง€ ๋“ฑ๋กํ•ด๋†“๊ณ  ๋ชป ๋“ค์—ˆ๋˜ ํŒจ์บ  Github ํด๋ก ์ฝ”๋”ฉ ๊ฐ•์˜๋ฅผ ๋‹ค์‹œ ๋“ค์œผ๋ฉด์„œ ์‹ฌ๊ธฐ์ผ์ „์„ ํ•˜๋‹ค๊ฐ€ ๊ฒฐ๊ตญ ์ผ์š”์ผ์— ์‹œ์ž‘ํ–ˆ๋‹ค. ๊ทผ๋ฐ ๋ง‰ ์ œ๋Œ€๋กœ ํ•˜๋ ค๊ณ  ํ•˜๋‹ˆ๊นŒ ์‹ ๊ฒฝ์จ์•ผ ํ•˜๋Š” ๋ถ€๋ถ„์ด ์ƒ๊ฐ๋ณด๋‹ค ๋„ˆ๋ฌด ๋งŽ๊ณ , SCSS๋„ ์ œ๋Œ€๋กœ ์“ฐ๋Š” ๊ฑด ์ด๋ฒˆ์ด ์ฒ˜์Œ์ด๊ณ , BEM๋„ ์ฒ˜์Œ ์ ์šฉํ•ด์„œ ์ด๊ฒŒ ๋งž๋‚˜ ์ €๊ฒŒ ๋งž๋‚˜ ํ•˜๋ฉด์„œ ์‹œ๊ฐ„์ด ๋˜๊ฒŒ ์˜ค๋ž˜ ๊ฑธ๋ ธ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ๋™์•ˆ CSS ์žฌ๋ฐŒ๋‹ค๊ณ  ๋งํ•ด์™”๋˜ ๊ฑธ ๋ฐ˜์„ฑํ•˜๋ฉด์„œ CSS์˜ ํ˜น๋…ํ•จ์„ ๋‹ค์‹œ๊ธˆ ๊นจ๋‹ซ๋Š” ์‹œ๊ฐ„์„ ๋ณด๋ƒˆ๋‹ค... ๊ทธ๋Ÿฐ๋ฐ ์ •๋ง ๋ฐฐ์šฐ๋Š” ๊ฒŒ ๋งŽ์•˜๋‹ค. flex, grid๋„ ์ด๋ฒˆ ๊ธฐํšŒ์— ์ œ๋Œ€๋กœ ์ดํ•ดํ•˜๊ฒŒ ๋œ ๊ฒƒ ๊ฐ™๊ณ , svg๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์•Œ๊ฒŒ ๋๋‹ค. ์—ฌ๋Ÿฌ๋ชจ๋กœ ์œ ์ตํ•œ ์‹œ๊ฐ„์ด์—ˆ์ง€๋งŒ ๊ณผ์ œ ์ œ์ถœ์€ ๊ฒฐ๊ตญ ํ™”์š”์ผ์— ํ–ˆ๊ณ ... ์•„์ง ์ž์œ  ์„ ํƒ ๊ณผ์ œ๋ฅผ ์‹œ์ž‘๋„ ๋ชปํ–ˆ๋‹ค... ๋ฐ˜์„ฑํ•ฉ๋‹ˆ๋‹ค...

 

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

 

  • React Native ๋ผ์ด๋ธŒ ์ฝ”๋”ฉ
    • ๋กœํ†  ๊ฐ•์‚ฌ๋‹˜์ด React Native ๋ผ์ด๋ธŒ ์ฝ”๋”ฉ์„ ํ•ด์ฃผ์…”์„œ ์ข€ ๊ตฌ๊ฒฝํ–ˆ๋Š”๋ฐ ์‚ฌ์‹ค React Native์— ๋Œ€ํ•ด ํ•˜๋‚˜๋„ ๋ชฐ๋ผ์„œ ์ฝ”๋“œ๋ฅผ ์ดํ•ดํ•˜๋ฉด์„œ ๋ณผ ์ˆ˜๋Š” ์—†์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ์˜ต์…”๋„ ์ฒด์ด๋‹๋„ ๋ฐฐ์› ๊ณ , React Query๋ผ๋Š” ๊ฒŒ ์žˆ๋‹ค๋Š” ์‚ฌ์‹ค๋„ ์•Œ๊ฒŒ ๋๋‹ค. ๋งˆ์นจ ์ œ๋กœ์ดˆ๋‹˜ ๋…ธ๋“œ ๋ฒ„๋“œ ๊ฐ•์˜์— Next.js์™€ Redux๋Š” ์ž˜ ๋ถ™์ง€ ์•Š๋Š” ํŽธ์ด๋ผ React Query๋กœ ๋ฆฌํŒฉํ† ๋งํ•œ ์ฝ”๋“œ๊ฐ€ ์—…๋ฐ์ดํŠธ ๋๋‹ค๋Š” ์•Œ๋ฆผ์ด ์™€์„œ ๋ฐ˜๊ฐ€์› ๋‹ค. ๋‹ค์Œ์— React Query๊ฐ€ ๋ญ”์ง€ ์ข€ ์‚ดํŽด๋ณด๊ณ  ์‹ถ๋‹ค.

 

 

'TIL' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[WIL] 7์ฃผ์ฐจ ํšŒ๊ณ   (0) 2021.09.20
[WIL] 6์ฃผ์ฐจ ํšŒ๊ณ   (0) 2021.09.12
[TIL] 20210908  (2) 2021.09.09
[TIL] 20210907  (2) 2021.09.08
[TIL] 20210906  (2) 2021.09.07