IT

๐Ÿ–ฅ๏ธ ๋ธŒ๋ผ์šฐ์ € ๋ Œ๋”๋ง ๊ณผ์ • (CRP) : ์›นํŽ˜์ด์ง€๊ฐ€ ๋ˆˆ์•ž์— ๋‚˜ํƒ€๋‚˜๊ธฐ๊นŒ์ง€์˜ ๋งˆ๋ฒ•

(Critical Rendering Path, ํ•ต์‹ฌ ๋ Œ๋”๋ง ๊ฒฝ๋กœ ์™„๋ฒฝ ์ดํ•ด)

์›น ๋ธŒ๋ผ์šฐ์ €์— ์ฃผ์†Œ๋ฅผ ์ž…๋ ฅํ•˜๊ณ  ์—”ํ„ฐ๋ฅผ ๋ˆ„๋ฅด๋Š” ์ˆœ๊ฐ„, ๋ณด์ด์ง€ ์•Š๋Š” ๊ณณ์—์„œ๋Š” ๋ณต์žกํ•˜๊ณ  ์น˜๋ฐ€ํ•œ ๊ณผ์ •์ด ์ˆœ์‹๊ฐ„์— ์ผ์–ด๋‚ฉ๋‹ˆ๋‹ค. ์ด ๊ณผ์ •์„ ๋ Œ๋”๋ง์ด๋ผ๊ณ  ํ•˜๋ฉฐ, ์›นํŽ˜์ด์ง€๋ฅผ ํ™”๋ฉด์— ํ‘œ์‹œํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์ผ๋ จ์˜ ๋‹จ๊ณ„๋ฅผ ํ•ต์‹ฌ ๋ Œ๋”๋ง ๊ฒฝ๋กœ(CRP)๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ณผ์ •์„ ์•Œ๋ฉด ์›น์‚ฌ์ดํŠธ์˜ ๋กœ๋”ฉ ์†๋„๋ฅผ ํš๊ธฐ์ ์œผ๋กœ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


๐Ÿš€ CRP์˜ 5๋‹จ๊ณ„ ์š”์•ฝ: ์›นํŽ˜์ด์ง€๋ฅผ ๊ทธ๋ฆฌ๋Š” ์ˆœ์„œ

๋ธŒ๋ผ์šฐ์ €๊ฐ€ HTML ๋ฌธ์„œ๋ฅผ ๋ฐ›์•„ ํ™”๋ฉด์— ์ตœ์ข…์ ์œผ๋กœ ํ‘œ์‹œํ•˜๊ธฐ๊นŒ์ง€๋Š” ํฌ๊ฒŒ 5๊ฐ€์ง€ ๋‹จ๊ณ„๋ฅผ ๊ฑฐ์นฉ๋‹ˆ๋‹ค.

  1. DOM ํŠธ๋ฆฌ ๊ตฌ์ถ• (HTML ์ฒ˜๋ฆฌ)
  2. CSSOM ํŠธ๋ฆฌ ๊ตฌ์ถ• (CSS ์ฒ˜๋ฆฌ)
  3. ๋ Œ๋” ํŠธ๋ฆฌ ๊ตฌ์ถ• (DOM + CSSOM ๊ฒฐํ•ฉ)
  4. ๋ ˆ์ด์•„์›ƒ (Layout/Reflow)
  5. ํŽ˜์ธํŒ… (Painting)

1๏ธโƒฃ DOM ํŠธ๋ฆฌ ๊ตฌ์ถ• (Document Object Model)

๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ HTML ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์œผ๋ฉด, ๊ฐ€์žฅ ๋จผ์ € ์ด ํ…์ŠคํŠธ ํŒŒ์ผ์„ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ์ฒด ๋ชจ๋ธ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

  • ์ž…๋ ฅ: HTML ํ…์ŠคํŠธ ํŒŒ์ผ
  • ๊ณผ์ •:
    • ๋ฐ”์ดํŠธ โ†’ ๋ฌธ์ž: HTML ํ…์ŠคํŠธ๋ฅผ ์ธ์ฝ”๋”ฉ์— ๋”ฐ๋ผ ๊ฐœ๋ณ„ ๋ฌธ์ž๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
    • ๋ฌธ์ž โ†’ ํ† ํฐ: <์™€ >๋กœ ๊ตฌ๋ถ„๋œ ์˜๋ฏธ ์žˆ๋Š” ๋ฉ์–ด๋ฆฌ(ํƒœ๊ทธ)์ธ ํ† ํฐ์œผ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
    • ํ† ํฐ โ†’ ๋…ธ๋“œ: ํ† ํฐ๋“ค์„ ๊ฐ์ฒด๋กœ ๋งŒ๋“ค์–ด ๋…ธ๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
    • ๋…ธ๋“œ โ†’ DOM ํŠธ๋ฆฌ: ๋…ธ๋“œ๋“ค์„ HTML ํƒœ๊ทธ์˜ ๊ณ„์ธต ๊ตฌ์กฐ์— ๋”ฐ๋ผ ๋ถ€๋ชจ-์ž์‹ ๊ด€๊ณ„๋กœ ์—ฐ๊ฒฐํ•˜์—ฌ DOM ํŠธ๋ฆฌ๋ฅผ ์™„์„ฑํ•ฉ๋‹ˆ๋‹ค.
  • ํŠน์ง•:
    • DOM ํŠธ๋ฆฌ๋Š” ํŽ˜์ด์ง€์˜ ์ฝ˜ํ…์ธ ์™€ ๊ตฌ์กฐ๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
    • HTML์€ ๋ Œ๋”๋ง์„ ์ฐจ๋‹จํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ฆ‰, HTML ํŒŒ์‹ฑ(๋ถ„์„)์€ <script> ํƒœ๊ทธ๋ฅผ ๋งŒ๋‚˜๊ธฐ ์ „๊นŒ์ง€๋Š” ๋ฉˆ์ถ”์ง€ ์•Š๊ณ  ๊ณ„์† ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค.

2๏ธโƒฃ CSSOM ํŠธ๋ฆฌ ๊ตฌ์ถ• (CSS Object Model)

DOM์ด ์ฝ˜ํ…์ธ ์˜ ๊ตฌ์กฐ๋ผ๋ฉด, CSSOM์€ ์ฝ˜ํ…์ธ ๋ฅผ ์–ด๋–ป๊ฒŒ ๊พธ๋ฐ€์ง€์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๋‹ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ž…๋ ฅ: CSS ํŒŒ์ผ, <style> ๋ธ”๋ก, ์ธ๋ผ์ธ ์Šคํƒ€์ผ
  • ๊ณผ์ •:
    • ๋ธŒ๋ผ์šฐ์ €๋Š” CSS ํŒŒ์ผ๋„ HTML๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ํŒŒ์‹ฑ ๊ณผ์ •์„ ๊ฑฐ์ณ CSSOM ํŠธ๋ฆฌ๋ฅผ ๊ตฌ์ถ•ํ•ฉ๋‹ˆ๋‹ค.
    • CSS๋Š” ๊ณ„๋‹จ์‹(Cascading) ์†์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ํ•˜์œ„ ์š”์†Œ๋Š” ๋ถ€๋ชจ ์š”์†Œ์˜ ์Šคํƒ€์ผ์„ ์ƒ์†๋ฐ›์œผ๋ฏ€๋กœ, CSSOM ํŠธ๋ฆฌ๋Š” ๋ถ€๋ชจ ๋…ธ๋“œ์˜ ์Šคํƒ€์ผ์„ ๋ฐ”ํƒ•์œผ๋กœ ํ•˜์œ„ ๋…ธ๋“œ๊นŒ์ง€ ์ตœ์ข… ์Šคํƒ€์ผ์„ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ํŠน์ง•:
    • CSS๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ Œ๋”๋ง์„ ์ฐจ๋‹จํ•ฉ๋‹ˆ๋‹ค. โŒ
    • ๋ธŒ๋ผ์šฐ์ €๋Š” CSSOM ํŠธ๋ฆฌ ๊ตฌ์ถ•์ด ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ๋‹ค์Œ ๋‹จ๊ณ„๋กœ ๋„˜์–ด๊ฐ€์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ถˆ์™„์ „ํ•œ ์Šคํƒ€์ผ๋กœ ์ฝ˜ํ…์ธ ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๊ฒƒ์„ ๋ง‰๊ธฐ ์œ„ํ•จ์ž…๋‹ˆ๋‹ค. (FOUC, Flash Of Unstyled Content ๋ฐฉ์ง€)

3๏ธโƒฃ ๋ Œ๋” ํŠธ๋ฆฌ ๊ตฌ์ถ• (Render Tree)

DOM๊ณผ CSSOM์ด ์ค€๋น„๋˜๋ฉด, ๋ธŒ๋ผ์šฐ์ €๋Š” ์ด ๋‘ ํŠธ๋ฆฌ๋ฅผ ํ•ฉ์ณ์„œ ํ™”๋ฉด์— ๋ณด์—ฌ์ค„ ์ตœ์ข… ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋ Œ๋” ํŠธ๋ฆฌ์ž…๋‹ˆ๋‹ค.

  • ๊ณผ์ •:
    • DOM ํŠธ๋ฆฌ์˜ ์ตœ์ƒ์œ„ ๋…ธ๋“œ๋ถ€ํ„ฐ ํƒ์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.
    • DOM ๋…ธ๋“œ์— ํ•ด๋‹นํ•˜๋Š” CSSOM ์Šคํƒ€์ผ์„ ์ฐพ์•„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.
    • โ€œํ™”๋ฉด์— ๋ณด์ด์ง€ ์•Š๋Š” ๋…ธ๋“œโ€๋Š” ๋ Œ๋” ํŠธ๋ฆฌ์—์„œ ์ œ์™ธ๋ฉ๋‹ˆ๋‹ค. ๐Ÿšซ
      • ์˜ˆ: <head> ํƒœ๊ทธ, display: none; ์†์„ฑ์ด ์ ์šฉ๋œ ์š”์†Œ
  • ๊ฒฐ๊ณผ: ๋ Œ๋” ํŠธ๋ฆฌ๋Š” ํŽ˜์ด์ง€์— ๋‚˜ํƒ€๋‚  ์š”์†Œ๋“ค์˜ ์‹œ๊ฐ์  ์ •๋ณด(๋ชจ์–‘, ํฌ๊ธฐ, ์œ„์น˜ ๋“ฑ)๋ฅผ ๋ชจ๋‘ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.

4๏ธโƒฃ ๋ ˆ์ด์•„์›ƒ (Layout / Reflow)

๋ Œ๋” ํŠธ๋ฆฌ๊ฐ€ ์™„์„ฑ๋˜๋ฉด, ๋ธŒ๋ผ์šฐ์ €๋Š” ์ด์ œ ๊ฐ ์š”์†Œ์˜ ์ •ํ™•ํ•œ ์œ„์น˜์™€ ํฌ๊ธฐ๋ฅผ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.

  • ๊ณผ์ •:
    • ๋ทฐํฌํŠธ ๋‚ด์—์„œ ๊ฐ ๋…ธ๋“œ(์š”์†Œ)์˜ ์ •ํ™•ํ•œ ํ”ฝ์…€ ์œ„์น˜, ๋„ˆ๋น„, ๋†’์ด ๋“ฑ์„ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.
    • ์ด ๊ณผ์ •์€ ์ „์ฒด ๋ฌธ์„œ๋ฅผ ๊ณ ๋ คํ•˜์—ฌ ํ•œ ๋ฒˆ์— ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ถ€๋ชจ ์š”์†Œ์˜ ๋„ˆ๋น„๊ฐ€ ๋ณ€๊ฒฝ๋˜๋ฉด ์ž์‹ ์š”์†Œ๋“ค ์ „์ฒด์˜ ์œ„์น˜์™€ ํฌ๊ธฐ๊ฐ€ ๋ชจ๋‘ ๋‹ค์‹œ ๊ณ„์‚ฐ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ์šฉ์–ด:
    • ๋ ˆ์ด์•„์›ƒ (Layout): ์ตœ์ดˆ์— ๋ชจ๋“  ์œ„์น˜์™€ ํฌ๊ธฐ๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒƒ.
    • ๋ฆฌํ”Œ๋กœ์šฐ (Reflow): ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ ๋“ฑ์œผ๋กœ ์ธํ•ด ๋ Œ๋” ํŠธ๋ฆฌ์˜ ์ผ๋ถ€๊ฐ€ ๋ณ€๊ฒฝ๋˜์–ด ์žฌ๊ณ„์‚ฐ์ด ์ผ์–ด๋‚˜๋Š” ๊ฒƒ. ๋ฆฌํ”Œ๋กœ์šฐ๋Š” ์„ฑ๋Šฅ ์ €ํ•˜์˜ ์ฃผ๋ฒ”์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

5๏ธโƒฃ ํŽ˜์ธํŒ… (Painting / Rasterization)

๋ ˆ์ด์•„์›ƒ ๋‹จ๊ณ„์—์„œ ๊ณ„์‚ฐ๋œ ์œ„์น˜์™€ ํฌ๊ธฐ ์ •๋ณด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ, ๋ธŒ๋ผ์šฐ์ €๋Š” ํ”ฝ์…€์„ ํ™”๋ฉด์— ์‹ค์ œ๋กœ ์ฑ„์šฐ๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

  • ๊ณผ์ •:
    • ์š”์†Œ์˜ ๋ฐฐ๊ฒฝ์ƒ‰, ๊ธ€๊ผด, ์ด๋ฏธ์ง€, ํ…Œ๋‘๋ฆฌ ๋“ฑ ๋ชจ๋“  ์‹œ๊ฐ์  ์†์„ฑ์„ ํ”ฝ์…€๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ํ™”๋ฉด์— ๊ทธ๋ฆฝ๋‹ˆ๋‹ค.
  • ์„ฑ๋Šฅ ์ตœ์ ํ™”:
    • ํ˜„๋Œ€ ๋ธŒ๋ผ์šฐ์ €๋Š” ํšจ์œจ์„ฑ์„ ์œ„ํ•ด ์ด ๊ณผ์ •์„ ๋ ˆ์ด์–ด(Layer) ๋‹จ์œ„๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
    • ๊ฐ ๋ ˆ์ด์–ด๋Š” GPU(๊ทธ๋ž˜ํ”ฝ ์ฒ˜๋ฆฌ ์žฅ์น˜)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ณ‘๋ ฌ์ ์œผ๋กœ ์ฒ˜๋ฆฌ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋ฅผ ๋ž˜์Šคํ„ฐํ™”(Rasterization)๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ–ผ๏ธ ํ•ฉ์„ฑ (Compositing)

ํŽ˜์ธํŒ…์ด ์™„๋ฃŒ๋œ ์—ฌ๋Ÿฌ ๋ ˆ์ด์–ด๋ฅผ ์ตœ์ข…์ ์œผ๋กœ ํ•˜๋‚˜๋กœ ํ•ฉ์ณ์„œ ํ™”๋ฉด์— ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ์Šคํฌ๋กค์ด๋‚˜ ์• ๋‹ˆ๋ฉ”์ด์…˜์ฒ˜๋Ÿผ ์œ„์น˜๋งŒ ๋ณ€๊ฒฝ๋˜๋Š” ์ž‘์—…์€ ๋ ˆ์ด์•„์›ƒ์ด๋‚˜ ํŽ˜์ธํŒ…์„ ๋‹ค์‹œ ํ•˜์ง€ ์•Š๊ณ , ์ด ํ•ฉ์„ฑ ๋‹จ๊ณ„์—์„œ ๋ ˆ์ด์–ด์˜ ์œ„์น˜๋งŒ ์˜ฎ๊ฒจ์„œ ์ฒ˜๋ฆฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์„ฑ๋Šฅ์ด ์ข‹์Šต๋‹ˆ๋‹ค.


๐Ÿ’ก ์„ฑ๋Šฅ ์ตœ์ ํ™”์˜ ํ•ต์‹ฌ (CRP๋ฅผ ์ค„์—ฌ๋ผ!)

CRP๋ฅผ ์ดํ•ดํ•˜๋ฉด โ€œ์™œ ๋‚ด ์‚ฌ์ดํŠธ๋Š” ๋А๋ฆด๊นŒ?โ€์— ๋Œ€ํ•œ ๋‹ต์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ตœ์ข… ๋ Œ๋”๋ง๊นŒ์ง€ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์„ ์ค„์ด๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ์ž…๋‹ˆ๋‹ค.

์ตœ์ ํ™” ๋Œ€์ƒ์›์ธํ•ด๊ฒฐ์ฑ…
CSSOMCSS๋Š” ๋ Œ๋”๋ง ์ฐจ๋‹จ โŒCSS๋ฅผ ๊ฐ€๋Šฅํ•œ ํ•œ ๋นจ๋ฆฌ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ํŒŒ์‹ฑํ•ฉ๋‹ˆ๋‹ค. <link> ํƒœ๊ทธ๋ฅผ <head>์˜ ์ƒ๋‹จ์— ๋ฐฐ์น˜ํ•ฉ๋‹ˆ๋‹ค.
์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ (JS)DOM/CSSOM ๊ตฌ์ถ•์„ ์ฐจ๋‹จ ๐Ÿ›‘<script> ํƒœ๊ทธ์— async ๋˜๋Š” defer ์†์„ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ์Šคํฌ๋ฆฝํŠธ ๋‹ค์šด๋กœ๋“œ ๋ฐ ์‹คํ–‰์ด ํŒŒ์‹ฑ์„ ์ฐจ๋‹จํ•˜์ง€ ์•Š๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
๋ ˆ์ด์•„์›ƒ๋ถˆํ•„์š”ํ•œ ๋ฆฌํ”Œ๋กœ์šฐ ๋ฐœ์ƒCSS ์†์„ฑ ์ค‘ ์œ„์น˜(Top, Left) ๋Œ€์‹  transform ์†์„ฑ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ ˆ์ด์•„์›ƒ์ด๋‚˜ ํŽ˜์ธํŒ… ์—†์ด ํ•ฉ์„ฑ ๋‹จ๊ณ„์—์„œ๋งŒ ์ฒ˜๋ฆฌ๋˜์–ด ๋น ๋ฆ…๋‹ˆ๋‹ค.

๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ด ๋ชจ๋“  ๊ณผ์ •์„ ์–ผ๋งˆ๋‚˜ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š”์ง€์— ๋”ฐ๋ผ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์ด ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค.

infodori1234

Recent Posts

๐Ÿ–ฅ NetBIOS over TCP IP NBT ์™„์ „ ๊ฐ€์ด๋“œ

๋กœ์ปฌ ๋„คํŠธ์›Œํฌ ํ™˜๊ฒฝ์„ ์กฐ๊ธˆ์ด๋ผ๋„ ๋‹ค๋ค„๋ณธ ์‚ฌ๋žŒ์ด๋ผ๋ฉด ํ•œ ๋ฒˆ์ฏค์€ ๋งˆ์ฃผ์น˜๋Š” ์ต์ˆ™ํ•œ ๋‹จ์–ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ”๋กœ NetBIOS์™€ NBT์ž…๋‹ˆ๋‹ค.…

2๊ฐœ์›” ago

๐Ÿ  JSON Schema: ๋ฐ์ดํ„ฐ ์œ ํšจ์„ฑ ๊ฒ€์ฆ์˜ ํ‘œ์ค€ ์„ค๊ณ„๋„ ๐Ÿ–ฅ

์•ˆ๋…•ํ•˜์„ธ์š”! ํ˜„๋Œ€ ์›น ๊ฐœ๋ฐœ์—์„œ ๋ฐ์ดํ„ฐ ๊ตํ™˜์˜ ํ•ต์‹ฌ์ธ JSON(JavaScript Object Notation)์„ ๋”์šฑ ๊ฐ•๋ ฅํ•˜๊ณ  ์•ˆ์ •์ ์œผ๋กœ ๋งŒ๋“ค์–ด์ฃผ๋Š” ๋„๊ตฌ,…

2๊ฐœ์›” ago

๐Ÿ  ECMAScript 3 ํ˜ธํ™˜์„ฑ ์™„์ „ ์ •๋ฆฌ ๊ฐ€์ด๋“œ

โŒ ECMAScript 3(E3)๋ž€ ๋ฌด์—‡์ผ๊นŒ ECMAScript 3๋Š” 1999๋…„์— ๊ณต์‹ํ™”๋œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ‘œ์ค€์ด๋‹ค. ์ง€๊ธˆ ๋ณด๋ฉด ์˜ค๋ž˜๋œ ๊ธฐ์ˆ  ๊ฐ™์ง€๋งŒ,…

2๊ฐœ์›” ago

๐Ÿ–ฅ CoffeeScript ์™„์ „ ๊ฐ€์ด๋“œ

CoffeeScript๋Š” ํ•œ๋•Œ ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ ์ƒํƒœ๊ณ„์—์„œ ๋งค์šฐ ์ธ๊ธฐ ์žˆ์—ˆ๋˜ ์–ธ์–ด์˜€๊ณ , ์ง€๊ธˆ๋„ ํŠน์ • ํ”„๋กœ์ ํŠธ๋‚˜ ๋ ˆ๊ฑฐ์‹œ ์‹œ์Šคํ…œ, ๊ฐ„๊ฒฐํ•œ…

2๊ฐœ์›” ago

๐Ÿ  ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜(Memory Leak) ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ: ๐Ÿ–ฅ ๋‚ญ๋น„๋˜๋Š” ์ปดํ“จํ„ฐ์˜ ๊ธฐ์–ต๋ ฅ โŒ

ํ˜„๋Œ€์ ์ธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ™˜๊ฒฝ์—์„œ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜(Memory Leak)๋Š” ์—ฌ์ „ํžˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์„ฑ๋Šฅ ์ €ํ•˜์™€ ์ถฉ๋Œ์„ ์ผ์œผํ‚ค๋Š” ์ฃผ์š” ์›์ธ ์ค‘…

2๊ฐœ์›” ago

๐Ÿ›‘ CORS ์˜ค๋ฅ˜ ์›๋ฆฌ ์™„๋ฒฝ ํ•ด์„ค: ๋ธŒ๋ผ์šฐ์ € ๋ณด์•ˆ์˜ ํ•„์ˆ˜ ๊ด€๋ฌธ! ๐Ÿ›ก๏ธ

์›น ๊ฐœ๋ฐœ์„ ํ•˜๋‹ค ๋ณด๋ฉด ๋ˆ„๊ตฌ๋‚˜ ํ•œ ๋ฒˆ์ฏค ๋ถ‰์€์ƒ‰ ๊ธ€์”จ์˜ CORS ์˜ค๋ฅ˜(Cross-Origin Resource Sharing Error)๋ฅผ ๋งŒ๋‚˜๊ฒŒ…

3๊ฐœ์›” ago