ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • web๋™์ž‘์›๋ฆฌ
    html.css.js/html css 2023. 11. 15. 11:10

    ๐Ÿฅ• ์›น ๋ธŒ๋ผ์šฐ์ €๋ž€?

    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰์‹œ์ผœ์ฃผ๋Š” ์—”์ง„์ด๋‹ค.
    ์ฆ‰, ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ฝ”๋“œ๋ฅผ ํ•ด์„ํ•ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค.
    ( HTML, CSS, JavaScript๋ฅผ ํ•ด์„ํ•ด์ฃผ๋Š” ์—”์ง„)

     

    ๐Ÿฅ•๋™๊ธฐ์   vs  ๋น„๋™๊ธฐ์  ?

     - ๋™๊ธฐ์ 

    ๋™๊ธฐ์ ์ธ ์ž‘์—…์€ ์ˆœ์ฐจ์ ์œผ๋กœ ์‹คํ–‰๋จ. ํ•œ ์ž‘์—…์ด ์‹œ์ž‘๋˜๋ฉด ๊ทธ ์ž‘์—…์ด ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ๋‹ค์Œ ์ž‘์—…์ด ๋Œ€๊ธฐ.

    ex) ์ฝ”์Šค์š”๋ฆฌ : ์ฐจ๋ก€๋Œ€๋กœ ๋จน์–ด์•ผ ๋‹ค์Œ์„ ๋จน์„ ์ˆ˜ ์žˆ์Œ

    - ๋น„๋™๊ธฐ์ 

    ๋น„๋™๊ธฐ์ ์ธ ์ž‘์—…์€ ์ˆœ์ฐจ์ ์œผ๋กœ ์‹คํ–‰๋˜์ง€ ์•Š์Œ. ํ•œ ์ž‘์—…์ด ์‹œ์ž‘๋˜๋ฉด ๋‹ค์Œ ์ž‘์—…์ด ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  ์ฆ‰์‹œ ์‹คํ–‰๋จ.

    ex) ๊ณ ๊ธฐ์ง‘ : ๋ชฉ์‚ด,์‚ผ๊ฒน์‚ด ๋จน๋‹ค๊ฐ€ ๋ผ๋ฉด ๋จน๋‹ค๊ฐ€ ๋™์‹œ์— ๋‹คํ•จ.

    ๐Ÿฅ• ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ (์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ)

    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ์›๋ž˜ ๋™๊ธฐ์ ์œผ๋กœ ์ฒ˜๋ฆฌ๋˜๋Š” ์–ธ์–ด์ด๋‹ค.

    ( ํ•œ ๋ฒˆ์— ํ•œ ๊ฐ€์ง€ ์ผ ๋ฐ–์— ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์—†๋‹ค )

    => ์ด๋ ‡๊ฒŒ ๋˜๋ฉด ๋ธŒ๋ผ์šฐ์ €์—์„œ ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋Š” ์ž‘์—…์ด ์‹คํ–‰๋  ๊ฒฝ์šฐ, ์›น ํŽ˜์ด์ง€์˜ UI๋Š” ๋ฉˆ์ถฐ๋ฒ„๋ฆฌ๊ณ , ์‚ฌ์šฉ์ž๋Š” ์–ด๋– ํ•œ ํ–‰๋™๋„ ํ•  ์ˆ˜ ์—†๊ฒŒ ๋จ

    ํ•˜์ง€๋งŒ ๊ฐ€๋” setTimeout๊ณผ ๊ฐ™์€์ฒ˜๋ฆฌ์ฒ˜๋Ÿผ ๋น„๋™๊ธฐ์ ์ธ ์ฒ˜๋ฆฌ๋„ ๊ฐ€๋Šฅ!

    console.log(1+1)
    setTimeout(function(){console.log(2+2)}, 2000)
    console.log(3+3)

    => ๋น ๋ฅธ๊ฒƒ๋ถ€ํ„ฐ ์‹คํ–‰์ด๋จ!!

    ๋™์ž‘์›๋ฆฌ๋ฅผ ์•Œ์•„๋ณด์ž!

    Stack

    • ๋ฐ์ดํ„ฐ๋ฅผ ์ฐจ๊ณก์ฐจ๊ณก ์Œ“์•„์˜ฌ๋ฆฐ ํ˜•ํƒœ์˜ ์ž๋ฃŒ๊ตฌ์กฐ ( ์‹œ๊ฐ„์˜ ์ˆœ์„œ์— ๋”ฐ๋ผ ์ž๋ฃŒ๊ฐ€ ์Œ“์ž„)
    • ํ›„์ž…์„ ์ถœ์˜ ํŠน์ง•์„ ๊ฐ€์ง
    • ๊ฐ€์žฅ ์ตœ๊ทผ์— ํ˜ธ์ถœ๋œ ํ•จ์ˆ˜๊ฐ€ ๊ฐ€์žฅ ๋จผ์ € ์‹คํ–‰๋˜๊ณ  ์ œ๊ฑฐ๋œ๋‹ค๋Š” ์˜๋ฏธ

     

    ๋จผ์ € Stack ์ด๋ผ๋Š” ๊ณต๊ฐ„์—๋Š” ๊ตฌํ˜„ํ•œ ์ฝ”๋“œ๊ฐ€ ํ•œ์ค„ ํ•œ์ค„ ์Œ“์ธ๋‹ค.

    ๊ตฌํ˜„ํ•œ ์ฝ”๋“œ ๋‚ด์— ์„ ์–ธํ•œ ๋ณ€์ˆ˜๋“ค์€ Heap์ด๋ผ๋Š” ๊ณต๊ฐ„์— ์Œ“์ธ๋‹ค. 

     

    Stack์€ ํ•˜๋‚˜ ๋ฟ์ด๊ธฐ๋•Œ๋ฌธ์— ํ•œ ๋ฒˆ์— ์ฝ”๋“œ ํ•˜๋‚˜๋ฐ–์— ์‹คํ–‰ํ•  ์ˆ˜ ์—†๋‹ค.

     

    ๊ทธ๋Ÿผ setTimeout ์€ ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌ๊ฐ€ ๋ ๊นŒ?

    setTimeout์ฒ˜๋Ÿผ ๋ฐ”๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์—†๋Š” ํ•จ์ˆ˜๋“ค์€ ๋Œ€๊ธฐ์‹ค(Heap)๊ฐ™์€ ๊ณณ์— ๋“ค์–ด๊ฐ.

    => setTimeout์˜ 2์ดˆ๊ฐ€ ์ง€๋‚œ ๊ฒฝ์šฐ,

    ๋Œ€๊ธฐ์‹ค์—์„œ ์ฝ”๋“œ๋ฅผ ์˜ฎ๊ฒจ์™€์•ผํ•˜๋Š”๋ฐ

    ๋ฐ”๋กœ Stack์— ๋‹ด๊ธฐ๋Š” ๊ฒƒ์ด ์•„๋‹Œ Queue์— ๋Œ€๊ธฐ๊ฐ€ ๋๋‚œ ์ฝ”๋“œ๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ์Œ“์ธ๋‹ค.

    =>๊ทธ๋ฆฌ๊ณ   queue > stack์œผ๋กœ ์˜ฎ๊ฒจ๊ฐ€๊ฒŒ๋˜๋Š”๋ฐ

    Stack์ด ๋น„์–ด์žˆ์„ ๊ฒฝ์šฐ์—๋งŒ ํ•˜๋‚˜์”ฉ์˜ฌ๋ ค ์‹คํ–‰ํ•˜๋ฉฐ ๋™์ž‘ํ•˜๋‹ค!

    Memory Heap (๋Œ€๊ธฐ์‹ค)

    ๋ฐ์ดํ„ฐ๋ฅผ ์ž„์‹œ ์ €์žฅํ•˜๋Š” ๊ณณ์œผ๋กœ, ํ•จ์ˆ˜๋‚˜ ๋ณ€์ˆ˜, ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ’๋“ค์„ ์ €์žฅํ•จ

    Queue

    = ๋Œ€๊ธฐ์ค„

    • ๋ฐ์ดํ„ฐ(data)๋ฅผ ์ž…๋ ฅ๋œ ์ˆœ์„œ๋Œ€๋กœ ์ฒ˜๋ฆฌํ•  ๋•Œ ์ฃผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์ž๋ฃŒ๊ตฌ์กฐ
    • ์„ ์ž…์„ ์ถœ์˜ ํŠน์ง•์„ ๊ฐ€์ง ( ๋จผ์ € ๋„ฃ์€ ๋ฐ์ดํ„ฐ๊ฐ€ ๋จผ์ € ๋‚˜์˜ด)
    • ex) ๊ณ ์†๋„๋กœ์—์„œ ์ž๋™์ฐจ๋“ค์€ ์ง„์ž…ํ•œ ์ˆœ์„œ๋Œ€๋กœ ํ†ตํ–‰๋ฃŒ๋ฅผ ๋‚ด๊ณ  ํ†จ๊ฒŒ์ดํŠธ๋ฅผ ํ†ต๊ณผํ•จ

    ํ ์ž๋ฃŒ๊ตฌ์กฐ๋Š” ๊ฐ ์žฅ์น˜ ์‚ฌ์ด์— ์กด์žฌํ•˜๋Š” ์†๋„์˜ ์ฐจ์ด๋‚˜ ์‹œ๊ฐ„์˜ ์ฐจ์ด๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋œ๋‹ค.

    ์ด๊ฒƒ์„ ํ†ตํ‹€์–ด ๋ฒ„ํผ(buffer)๋ผ๊ณ  ํ•จ

     

    'html.css.js > html css' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

    ๊ทธ๋ฆฌ๋“œ [grid]  (0) 2023.12.15
    scss  (0) 2023.11.09
    [CSS] Flex์†์„ฑ  (0) 2023.08.07
Designed by Tistory.