Closed JengYoung closed 1 year ago
μ‘°λ§κ° Resizeμ Draggableμ ꡬννλ € νλ€. μ΄λ₯Ό μ‘°μνκΈ° μν΄μλ μνκ° νμνλ°, μ¬μ μ μ΄λ₯Ό μ μμμ κ΄λ¦¬νκ³ μ νλ€.
Resize
Draggable
μ΄μ λ λ€μκ³Ό κ°λ€.
μ μ μνλ₯Ό μ μν¨μΌλ‘μ¨ λ λλ§ λ‘μ§μ μ΅μ νν μ μλ€. μ μ μνλ₯Ό μ μνμ¬ λ€λ₯Έ κ³μΈ΅μ μ‘΄μ¬νλ μ»΄ν¬λνΈ μμ ν΄λΉ μνμ λν΄ λ°μν μ μλλ‘ μ μ΄ν μ μλ€.
λ©°μΉ κ³ λ―Όνμ§ μμμ§λ§, νΌκ·Έλ§ λ‘μ§μ μκ°λ³΄λ€ 볡μ‘ν κ² κ°λ€. κ·Έλ κ·Έλ΄ κ²μ΄ μ¬μ€μ λ΄κ° μλ‘μ΄ μ»΄ν¬λνΈλ₯Ό νλ©΄ μμ κ·Έλ €λ΄μΌ νκΈ° λλ¬Έμ, μ€κ³λ₯Ό λμΆ© ν΄λ²λ¦¬λ©΄, λμ€μ μμ νκΈ°κ° λ§€μ° μ΄λ ΅λ€.
μλνλ©΄ μ»΄ν¬λνΈμ μ’ λ₯λ 무κΆλ¬΄μ§νλ©°, λ°λΌμ νμ₯μλ μ΄λ €μμ΄μΌ νλλ°, μ΄μ λν ν¨ν΄ μ€κ³κ° μ λλ‘ λμ΄ μμ§ μμΌλ©΄ μ μ§λ³΄μκ° κ΅μ₯ν μ΄λ €μμ§κΈ° λλ¬Έμ΄λ€.
TaskQueue
λ°λΌμ μΌλ¨ μΌκ°μ blockGroupμμ μ΄λμ λ Stateλ₯Ό κ°μ Έμ€λ 건 Store λλΆμ ν΄κ²°ν κ² κ°μλ° λ¬Έμ λ μ΄λ»κ² μμ²μ μ²λ¦¬νλλλ€. μΌκ°μ TaskQueueλ μμ±ν΄μΌ ν κ² κ°λ€.
blockGroup
State
Store
μ΄μ λ HTTP ν΅μ μ μμ΄ κ³μ μμ²/μλ΅μ κ° μ»΄ν¬λνΈ λ³κ²½μλ§λ€ νλ©΄ λ€νΈμν¬ κ° ν΅μ μμ λ°μνλ νΈλν½μ΄ μκ°λ³΄λ€ λ§λ§μΉ μμ κ² κ°λ€λ μκ°μ΄λ€.
HTTP
λν μ΄λ κ² νκΊΌλ²μ μ¬λ¬ κ°μ μμ²μ μ²λ¦¬νλ λ‘μ§μ Virtual DOM(μ€μ λ‘λ 리μ‘νΈλ μ΄μ μ΄ λ§μ μ«μ΄νκΈ΄ νμ§λ§)μ λλͺ μ¬μΈ 리μ‘νΈμμ μ²λ¦¬νλ λ°©λ²μ΄κΈ°λ νλ€. 리μ‘νΈλ μν λ³κ²½μ΄ λ°μνλ©΄ μ½ 10ms ~ 20ms λ΄μ μ²λ¦¬ μκ°μμ λ°μν μν λ³κ²½ λ‘μ§μ λͺ¨μ λ°°μΉ μ²λ¦¬νλ€.
Virtual DOM
μ΄λ κ² λΉλκΈ° μ²λ¦¬λ₯Ό νκΊΌλ²μ λ°°μΉμ²λ¦¬ν¨μΌλ‘μ¨ λΉ λ₯΄κ² μνλ₯Ό λ°μν μ μλ κ²μ΄λ€. μμ§ λ°±μλ μͺ½μ μμ²νμ§λ μμμ§λ§, λλ°μ΄μ€ ν, μ΄λ¬ν μΌκ΄ μμ² λ°©μμ λν΄ κ²ν νλλ‘ μ μν΄μΌκ² λ€.
리μ‘νΈ λ°°μΉ μ²λ¦¬μ λν κ·Όκ±°λ₯Ό μ°Ύλ€κ° μλ²½νμ§ μμ§λ§ μΌλ¨ 보μ΄λ κ±Έ μ°Ύμλ€
λ©μΆ°! ππ» μ μ μ²΄ν¬ λ€μ΄κ°λλ€~
λ°°κ²½ λ° μ€λͺ
μ‘°λ§κ°
Resize
μDraggable
μ ꡬννλ € νλ€. μ΄λ₯Ό μ‘°μνκΈ° μν΄μλ μνκ° νμνλ°, μ¬μ μ μ΄λ₯Ό μ μμμ κ΄λ¦¬νκ³ μ νλ€.μ΄μ λ λ€μκ³Ό κ°λ€.
κΈ°λκ²°κ³Ό
μ μ μνλ₯Ό μ μν¨μΌλ‘μ¨ λ λλ§ λ‘μ§μ μ΅μ νν μ μλ€. μ μ μνλ₯Ό μ μνμ¬ λ€λ₯Έ κ³μΈ΅μ μ‘΄μ¬νλ μ»΄ν¬λνΈ μμ ν΄λΉ μνμ λν΄ λ°μν μ μλλ‘ μ μ΄ν μ μλ€.
λμ μ μ
μ΄κΈ° μ€κ³λ₯Ό μν΄μΌ νλ€.
λ©°μΉ κ³ λ―Όνμ§ μμμ§λ§, νΌκ·Έλ§ λ‘μ§μ μκ°λ³΄λ€ 볡μ‘ν κ² κ°λ€. κ·Έλ κ·Έλ΄ κ²μ΄ μ¬μ€μ λ΄κ° μλ‘μ΄ μ»΄ν¬λνΈλ₯Ό νλ©΄ μμ κ·Έλ €λ΄μΌ νκΈ° λλ¬Έμ, μ€κ³λ₯Ό λμΆ© ν΄λ²λ¦¬λ©΄, λμ€μ μμ νκΈ°κ° λ§€μ° μ΄λ ΅λ€.
μλνλ©΄ μ»΄ν¬λνΈμ μ’ λ₯λ 무κΆλ¬΄μ§νλ©°, λ°λΌμ νμ₯μλ μ΄λ €μμ΄μΌ νλλ°, μ΄μ λν ν¨ν΄ μ€κ³κ° μ λλ‘ λμ΄ μμ§ μμΌλ©΄ μ μ§λ³΄μκ° κ΅μ₯ν μ΄λ €μμ§κΈ° λλ¬Έμ΄λ€.
TaskQueue
μμ±?!λ°λΌμ μΌλ¨ μΌκ°μ
blockGroup
μμ μ΄λμ λState
λ₯Ό κ°μ Έμ€λ 건Store
λλΆμ ν΄κ²°ν κ² κ°μλ° λ¬Έμ λ μ΄λ»κ² μμ²μ μ²λ¦¬νλλλ€. μΌκ°μTaskQueue
λ μμ±ν΄μΌ ν κ² κ°λ€.μ΄μ λ
HTTP
ν΅μ μ μμ΄ κ³μ μμ²/μλ΅μ κ° μ»΄ν¬λνΈ λ³κ²½μλ§λ€ νλ©΄ λ€νΈμν¬ κ° ν΅μ μμ λ°μνλ νΈλν½μ΄ μκ°λ³΄λ€ λ§λ§μΉ μμ κ² κ°λ€λ μκ°μ΄λ€.μ΄μ λ λ€μκ³Ό κ°λ€.
λν μ΄λ κ² νκΊΌλ²μ μ¬λ¬ κ°μ μμ²μ μ²λ¦¬νλ λ‘μ§μ
Virtual DOM
(μ€μ λ‘λ 리μ‘νΈλ μ΄μ μ΄ λ§μ μ«μ΄νκΈ΄ νμ§λ§)μ λλͺ μ¬μΈ 리μ‘νΈμμ μ²λ¦¬νλ λ°©λ²μ΄κΈ°λ νλ€. 리μ‘νΈλ μν λ³κ²½μ΄ λ°μνλ©΄ μ½ 10ms ~ 20ms λ΄μ μ²λ¦¬ μκ°μμ λ°μν μν λ³κ²½ λ‘μ§μ λͺ¨μ λ°°μΉ μ²λ¦¬νλ€.μ΄λ κ² λΉλκΈ° μ²λ¦¬λ₯Ό νκΊΌλ²μ λ°°μΉμ²λ¦¬ν¨μΌλ‘μ¨ λΉ λ₯΄κ² μνλ₯Ό λ°μν μ μλ κ²μ΄λ€. μμ§ λ°±μλ μͺ½μ μμ²νμ§λ μμμ§λ§, λλ°μ΄μ€ ν, μ΄λ¬ν μΌκ΄ μμ² λ°©μμ λν΄ κ²ν νλλ‘ μ μν΄μΌκ² λ€.
μ°Έκ³ μλ£
리μ‘νΈ λ°°μΉ μ²λ¦¬μ λν κ·Όκ±°λ₯Ό μ°Ύλ€κ° μλ²½νμ§ μμ§λ§ μΌλ¨ 보μ΄λ κ±Έ μ°Ύμλ€