Daily/Today I Learned

22.12.01_TIL

ํ˜ธ๋ฐ€์ด 2022. 12. 1. 17:58

๐Ÿ“— ์˜ค๋Š˜ ํ•œ ์ผ

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด (๋ฆฌํŠธ์ฝ”๋“œ 3๋ฌธ์ œ)

  • [easy] Reverse Bits
    • ์ฃผ์–ด์ง„ ์ •์ˆ˜๋ฅผ ๊ฐ€์ง€๊ณ  ์ด์ง„๋ฒ•์œผ๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ๊ฑฐ๊พธ๋กœ ๋œ ๊ฐ’์„ ์ฐพ์•„์„œ 32bit ์ •์ˆ˜๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค.
      ๋น„ํŠธ ๊ด€๋ จ ๋ฌธ์ œ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค, ๋ฐฑ์ค€์—์„œ๋Š” ๊ฑฐ์˜ ๋ณด์ง€ ๋ชปํ•œ ๋ฌธ์ œ์˜€์–ด์„œ split, reverse, join ๋“ฑ๊ณผ ๊ฐ™์€ ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ’€์œผ๋ ค ํ–ˆ์œผ๋‚˜ ์‹คํŒจํ–ˆ๊ณ , ์ฐพ์•„ ๋ณธ ๊ฒฐ๊ณผ ๋น„ํŠธ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ’€์–ด์•ผํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค...
  • [easy] Number of 1 Bits
    • ๋ถ€ํ˜ธ๊ฐ€ ์—†๋Š” 0๊ณผ 1๋กœ ์ด๋ฃจ์ €์ง„ ์ •์ˆ˜๋ฅผ ๋ฐ›์•„์„œ ๋น„ํŠธ 1์˜ ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค.
      ์ฒ˜์Œ์—” ๋‹จ์ˆœํ•˜๊ฒŒ filter๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ•ด๊ฒฐํ•˜๋ ค ํ–ˆ์œผ๋‚˜ ๋“ค์–ด์˜ค๋Š” ์ˆ˜๊ฐ€ ์ •์ˆ˜์˜€๊ณ  0์œผ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋น„ํŠธ ์ •์ˆ˜๊ฐ€ ์กด์žฌํ–ˆ๊ธฐ์— toString์œผ๋กœ 2์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ•˜๊ณ , split์œผ๋กœ ๋‚˜๋ˆˆ๋‹ค์Œ filter๋กœ 1์ธ ๋น„ํŠธ๋ฅผ ์ฐพ์•„์„œ ๊ฐฏ์ˆ˜๋ฅผ ์ฐพ์•„๋ƒˆ๋‹ค.
  • [easy] Happy Number
    • ์ž…๋ ฅ ๋ฐ›์€ ์ •์ˆ˜๋ฅผ ํ•œ ์ž๋ฆฌ์”ฉ ๋Š์–ด์„œ 2์ œ๊ณฑํ•œ ๊ฐ’๋“ค์„ ๋”ํ•œ ๊ฐ’์ด 1์ด ๋ ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•˜์—ฌ 1์ด๋ผ๋ฉด true๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ  ์ด์ „์— ๋‚˜์™”๋˜ ์ •์ˆ˜๋ผ๋ฉด false๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค.
      while๋ฌธ์œผ๋กœ 2์ œ๊ณฑํ•œ ๊ฐ’๋“ค์„ ๋”ํ•œ ๊ฐ’์ด 1์ธ์ง€ ํ™•์ธํ•˜๊ณ  1์ด ์•„๋‹ˆ๋ผ๋ฉด stack ๋ฐฐ์—ด์— ์ถ”๊ฐ€ํ•ด์ฃผ๊ณ  ๋”ํ•œ ๊ฐ’์ด stack์— ์žˆ๋‹ค๋ฉด false๋ฅผ ๋ฐ˜ํ™˜ํ•ด์ฃผ๊ณ  1์ด๋ผ๋ฉด true๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์‹์œผ๋กœ ๊ตฌ์„ฑํ–ˆ๋‹ค. 

Next.js ํ•™์Šต (Udemy)

  • Link ์‚ฌ์šฉํ•˜๊ธฐ
  • ๋™์  Route๋กœ ๋„ค๋น„๊ฒŒ์ดํŒ…ํ•˜๊ธฐ
  • Link href ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ• 2๊ฐ€์ง€
  • ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹์œผ๋กœ ๋„ค๋น„๊ฒŒ์ดํŒ… ํ•˜๊ธฐ
  • ์ปค์Šคํ…€ 404 ํŽ˜์ด์ง€ ์ถ”๊ฐ€ํ•˜๊ธฐ

๋ฉด์ ‘์ค€๋น„

๋ถ€ํŠธ์บ ํ”„ ๋™๊ธฐ๋ถ„์ด ๋ฐ›์•˜๋˜ ์งˆ๋ฌธ๋“ค์„ ํ† ๋Œ€๋กœ ํ•™์Šตํ•˜์ง€ ์•Š์•˜๋˜ ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ ํ•™์Šตํ–ˆ๋‹ค.

  • useCallback์ด๋‚˜ useMemo์„ ์‚ฌ์šฉํ•˜๊ธฐ ์ข‹์€ ์‹œ์ ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”
  • useEffect๋กœ ์ปดํฌ๋„ŒํŠธ ์–ธ๋งˆ์šดํŠธ ๊ตฌํ˜„ํ•  ๋•Œ ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„ํ• ๊ฑด์ง€ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”
  • ์ปค์Šคํ…€ ํ›…์˜ ์žฅ์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”
  • useLayoutEffect์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”

โœ Diary

next๋ฅผ ํ•™์Šตํ–ˆ์„ ๋•Œ React Route Dom์„ ์‚ฌ์šฉํ•  ๋•Œ์˜ Link์™€ next์˜ Link๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ์ฃผ์˜ํ•ด์•ผํ•œ๋‹ค. ๋‘˜์˜ ๊ธฐ๋Šฅ์€ ์–ธ๋œป๋ณด๋ฉด ๋น„์Šทํ•ด๋ณด์ด์ง€๋งŒ ์ž์„ธํžˆ ๋ดค์„ ๋•Œ๋Š” to์™€ href๋“ฑ์œผ๋กœ ๊ฐˆ๋ฆฌ๋Š” ํ˜•์‹์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
404์—๋Ÿฌ ํŽ˜์ด์ง€๊ฐ€ ์–ด๋””์„œ ๋‚˜์˜ค๋Š”์ง€ ๊ถ๊ธˆํ–ˆ์—ˆ๋Š”๋ฐ ๊ธฐ๋ณธ์ ์œผ๋กœ npx create-next-app์„ ํ•  ๋•Œ ๋งŒ๋“ค์–ด์ง€๊ณ  ์‚ฌ์ดํŠธ ๋ณ„๋กœ 404ํŽ˜์ด์ง€๋ฅผ ๋‚˜ํƒ€๋‚ด๊ธฐ ์œ„ํ•ด์„œ๋Š” pages ํด๋”์— 404.js ํŒŒ์ผ์„ ์ƒ์„ฑํ•ด์„œ ์ž์‹ ๋งŒ์˜ ์ปค์Šคํ…€ ํŽ˜์ด์ง€๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์—ˆ๋‹ค.
next๋Š” ์‚ฌ์‹ค ์–ด๋ ค์›Œ ๋ณด์ด์ง€๋งŒ React๋ฅผ ์ถฉ๋ถ„ํžˆ ํ•™์Šตํ•˜๊ณ  ๋„˜์–ด์˜จ ๋‚˜๋กœ์จ๋Š” ์กฐ๊ธˆ์€ ์‰ฝ๊ฒŒ ๋ฐฐ์šฐ๊ณ  ์žˆ๋Š” ๋“ฏํ•œ ๋Š๋‚Œ์ด๋‹ค. (๋ฌผ๋ก  ๊นŠ๊ฒŒ๊ฐ€๋ฉด ๋” ์–ด๋ ค์›Œ ์งˆ์ง€๋„...?)
๋ถ€ํŠธ์บ ํ”„ ๋™๊ธฐ๋ถ„์ด ๋ฉด์ ‘์—์„œ ๋‚˜์™”๋˜ ์งˆ๋ฌธ๋“ค์„ ๋ง์”€ํ•ด์ฃผ์…จ๋‹ค. (๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!!)
๋•๋ถ„์— ์ค€๋น„ํ–ˆ๋˜ ๋ฉด์ ‘๋ฆฌ์ŠคํŠธ์— ์žˆ๋˜ ๋‚ด์šฉ๋“ค์ด ๋Œ€๋ถ€๋ถ„์ด์—ˆ์ง€๋งŒ ์ƒˆ๋กญ๊ฒŒ ์ค€๋น„ํ•ด์•ผํ•  ๋‚ด์šฉ๋“ค์ด ๋ณด์—ฌ์„œ ์กฐ๊ธˆ ๋” ์ถ”๊ฐ€ํ•ด์„œ ์ •๋ฆฌํ–ˆ๋‹ค.

'Daily > Today I Learned' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

22.12.03_TIL  (0) 2022.12.08
22.12.02_TIL  (0) 2022.12.02
22.11.30_TIL  (0) 2022.11.30
22.11.29_TIL  (0) 2022.11.29
22.11.28_TIL  (0) 2022.11.29