๐Ÿธminzzi
Minzzi์•ผ
๐Ÿธminzzi
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (133)
    • ์˜ค๋ฅ˜ํ•ด๊ฒฐ (14)
    • FE (36)
      • Next.js (17)
      • React (4)
      • React Native (0)
      • TypeScript (1)
      • JavaScript (14)
    • BE (0)
      • Nest.js (0)
    • ๋ฐ๋ธŒ์ฝ”์Šค (7)
    • ์›น ํ”„๋กœ์ ํŠธ (5)
    • CS (28)
      • Algorithm (5)
      • Python (4)
      • C++ (2)
      • Operating System (4)
      • Computer Networking (3)
      • Data Structure (1)
      • Machine Learning (3)
      • Tip (6)
    • Github (4)
    • Flutter (3)
      • ํ”„๋กœ์ ํŠธ (3)
    • Private (3)
      • ํšŒ๊ณ  (7)
      • ๋ฉด์ ‘ (17)
    • ๊ฐœ๋ฐœ๋„์„œ (8)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • ํ˜ธ์ด์ŠคํŒ…
  • ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…
  • ์˜ค๋ธ”์™„
  • ๋ฉด์ ‘
  • ๋ ‰์‹œ์ปฌ
  • ์‹คํ–‰์ปจํ…์ŠคํŠธ
  • react
  • reflow
  • next.js
  • ํž™์˜์—ญ
  • ์ด๋ฒคํŠธ๋ฃจํ”„
  • SSR
  • ํ‹ฐ์Šคํ† ๋ฆฌ์ฑŒ๋ฆฐ์ง€
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ
  • ์ฝœ์Šคํƒ
  • ์›์‹œํƒ€์ž…
  • ๋ชจ๋˜๋ฆฌ์•กํŠธ๋”ฅ๋‹ค์ด๋ธŒ
  • layout shift
  • ์ด๋ฏธ์ง€ ์ตœ์ ํ™”
  • ์‹คํ–‰์ปจํƒ์ŠคํŠธ

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
๐Ÿธminzzi

Minzzi์•ผ

Private/๋ฉด์ ‘

ํ”„๋ก ํŠธ์—”๋“œ ๋ฉด์ ‘(reflow, repaint)

2024. 11. 10. 12:41

1. reflow์™€ repaint์˜ ์ฐจ์ด์ ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

reflow์™€ repaint๋Š” ๋ชจ๋‘ ๋ Œ๋”๋ง๊ณผ ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

 

ํ™”๋ฉด์ด ๋ฆฌ๋žœ๋”๋ง ๋์„ ๋•Œ, ๊ฐ ์ƒํ™ฉ์— ๋”ฐ๋ผ reflow์™€ repaint๊ฐ€ ์ผ์–ด๋‚˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. reflow๋Š” ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ํŽ˜์ด์ง€์˜ ๋ ˆ์ด์•„์›ƒ์„ ๋‹ค์‹œ ๊ณ„์‚ฐํ•˜๋Š” ๊ณผ์ •์„ ์˜๋ฏธํ•˜๊ณ  repaint๋Š” ๊ณ„์‚ฐ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ํ™”๋ฉด์— ๋‹ค์‹œ ๊ทธ๋ฆฌ๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค.

 

reflow๋Š” DOM์˜ ๊ตฌ์กฐ๊ฐ€ ๋ณ€๊ฒฝ๋˜๊ฑฐ๋‚˜ ์š”์†Œ์˜ ํฌ๊ธฐ๋‚˜ ์œ„์น˜๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ ์ผ์–ด๋‚ฉ๋‹ˆ๋‹ค. repaint๋Š” ๋ ˆ์ด์•„์›ƒ์€ ๊ทธ๋Œ€๋กœ์ด๊ณ  ์ƒ‰์ƒ์ด๋‚˜ ๋ฐฐ๊ฒฝ ๋“ฑ์˜ ์Šคํƒ€์ผ๋งŒ ๋ณ€๊ฒฝ๋˜์—ˆ์„ ๋•Œ ์ผ์–ด๋‚ฉ๋‹ˆ๋‹ค. ๋ ˆ์ด์•„์›ƒ์„ ๋‹ค์‹œ ๊ณ„์‚ฐํ•˜๋Š” reflow๊ฐ€ ์ผ์–ด๋‚˜๋ฉด repaint๊ฐ€ ํ•„์—ฐ์ ์œผ๋กœ ์ผ์–ด๋‚˜๊ธฐ๋„ ํ•˜๊ณ , reflow๋Š” ๋น„์šฉ์ด ๋” ๋“ค๊ธฐ ๋•Œ๋ฌธ์— ๋ ˆ์ด์•„์›ƒ ๊ณ„์‚ฐ์ด ๋‹ค์‹œ ์ผ์–ด๋‚˜์ง€ ์•Š๋„๋ก ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. 

2. reflow๊ฐ€ ๋‹ค์‹œ ์ผ์–ด๋‚˜์ง€ ์•Š๊ฒŒ ํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ•˜๋‚˜์š”?

reflow๋ฅผ ์œ ๋ฐœํ•˜๋Š” CSS ์†์„ฑ ์‚ฌ์šฉ์„ ์ตœ์†Œํ™”ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. width, height, margin, padding, border ๋“ฑ์˜ ์†์„ฑ์€ ์š”์†Œ์˜ ๋ ˆ์ด์•„์›ƒ์„ ๋‹ค์‹œ ๊ณ„์‚ฐํ•˜๊ฒŒ ํ•˜๊ธฐ๋•Œ๋ฌธ์— reflow๋ฅผ ์ผ์œผํ‚ต๋‹ˆ๋‹ค. ๋ฏธ๋ฆฌ ํ•ด๋‹น ์†์„ฑ ๊ฐ’์„ ์„ค์ •ํ•ด ์ดˆ๊ธฐ ๋กœ๋“œ ์‹œ์—๋งŒ ๊ณ„์‚ฐ์ด ์ด๋ฃจ์–ด์ง€๋„๋ก ํ•˜๊ณ , ์ดํ›„์—๋Š” ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

 

โœ๏ธ Reflow๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ

1. ์š”์†Œ์˜ ํฌ๊ธฐ, ์œ„์น˜ ๋ณ€๊ฒฝ

2. ๋ธŒ๋ผ์šฐ์ € ์ฐฝ์˜ ํฌ๊ธฐ ๋ณ€๊ฒฝ

3. font size ๋ณ€๊ฒฝ

4. scroll

5. DOM API๋ฅผ ํ†ตํ•œ ๋…ธ๋“œ ์š”์†Œ์˜ ์ถ”๊ฐ€, ์‚ญ์ œ

 

โœ๏ธ 2๋ฒˆ ์งˆ๋ฌธ ์ถ”๊ฐ€ ๋ฐฉ๋ฒ•

CSS ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ตœ์ ํ™”

CSS ์†์„ฑ ์‚ฌ์šฉ์„ ์ตœ์†Œํ™”ํ•˜๊ธฐ ์–ด๋ ต๋‹ค๋ฉด, transform์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ display ๋ณด๋‹ค๋Š” opacity๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์„ฑ๋Šฅ ๊ฐœ์„ ์— ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” GPU ๊ฐ€์†์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— reflow๋ฅผ ์ผ์œผํ‚ค์ง€ ์•Š๊ณ  repaint๋งŒ ๋ฐœ์ƒ์‹œํ‚ค๋ฏ€๋กœ CPU ์ž์›์„ ์ ๊ฒŒ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

 

๋”๋ณด๊ธฐ

https://www.maeil-mail.kr/

 

๋งค์ผ๋ฉ”์ผ - ๊ธฐ์ˆ  ๋ฉด์ ‘ ์งˆ๋ฌธ ๊ตฌ๋… ์„œ๋น„์Šค

๊ธฐ์ˆ  ๋ฉด์ ‘ ์งˆ๋ฌธ์„ ๋งค์ผ๋งค์ผ ๋ฉ”์ผ๋กœ ๋ณด๋‚ด๋“œ๋ฆด๊ฒŒ์š”!

www.maeil-mail.kr

 

์ €์ž‘์žํ‘œ์‹œ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'Private > ๋ฉด์ ‘' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

ํ”„๋ก ํŠธ์—”๋“œ ๋ฉด์ ‘(์ด๋ฒคํŠธ ๋ฃจํ”„)  (0) 2024.11.13
ํ”„๋ก ํŠธ์—”๋“œ ๋ฉด์ ‘(์ด๋ฏธ์ง€ ์ตœ์ ํ™”)  (0) 2024.11.12
ํ”„๋ก ํŠธ์—”๋“œ ๋ฉด์ ‘(์‹คํ–‰์ปจํ…์ŠคํŠธ, ์Šค์ฝ”ํ”„ ์ฒด์ธ)  (0) 2024.11.11
ํ”„๋ก ํŠธ์—”๋“œ ๋ฉด์ ‘(ํด๋กœ์ €, ํด๋กœ์ €์˜ ๋‹จ์ )  (5) 2024.11.09
ํ”„๋ก ํŠธ์—”๋“œ ๋ฉด์ ‘(Sync, Async, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋™์ž‘ ์›๋ฆฌ, Call Stack, TaskQueue, Event Loop)  (0) 2024.11.08
    'Private/๋ฉด์ ‘' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • ํ”„๋ก ํŠธ์—”๋“œ ๋ฉด์ ‘(์ด๋ฏธ์ง€ ์ตœ์ ํ™”)
    • ํ”„๋ก ํŠธ์—”๋“œ ๋ฉด์ ‘(์‹คํ–‰์ปจํ…์ŠคํŠธ, ์Šค์ฝ”ํ”„ ์ฒด์ธ)
    • ํ”„๋ก ํŠธ์—”๋“œ ๋ฉด์ ‘(ํด๋กœ์ €, ํด๋กœ์ €์˜ ๋‹จ์ )
    • ํ”„๋ก ํŠธ์—”๋“œ ๋ฉด์ ‘(Sync, Async, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋™์ž‘ ์›๋ฆฌ, Call Stack, TaskQueue, Event Loop)
    ๐Ÿธminzzi
    ๐Ÿธminzzi

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”