π₯ λλ§μ μΉ μλΉμ€λ₯Ό λ§λ€μ! μ€λ ₯ ν₯μ 보μ₯ μλ°μ€ν¬λ¦½νΈ νλ‘μ νΈλΆ μλ²½ κ°μ΄λ π₯
A. μκ°
μ΄ κΈμμλ μλ°μ€ν¬λ¦½νΈ μ€λ ₯ ν₯μμ λμμ΄ λ λ€μν νλ‘μ νΈλ€μ μκ°ν©λλ€. λ¨μν μμ λ₯Ό λμ΄ μ€μ μΉ μλΉμ€μ μ μ© κ°λ₯ν νλ‘μ νΈλ€μ ν΅ν΄ μ€λ¬΄ λ₯λ ₯μ ν€μΈ μ μλλ‘ κ΅¬μ±νμ΅λλ€. μ΄λ³΄μλΆν° μ€κΈμκΉμ§, μμ μ μμ€μ λ§λ νλ‘μ νΈλ₯Ό μ ννμ¬ μ§νν μ μμ΅λλ€. κ° νλ‘μ νΈλ μμΈν μ€λͺ κ³Ό μ½λ μμ λ₯Ό μ 곡νλ©°, μ€μ΅μ ν΅ν΄ μλ°μ€ν¬λ¦½νΈ κ°λ μ λμ± κΉμ΄ μ΄ν΄ν μ μλλ‘ λμ΅λλ€.
B. νλ‘μ νΈ 1: κ°λ¨ν ToDo 리μ€νΈ λ§λ€κΈ°
첫 λ²μ§Έ νλ‘μ νΈλ κ°λ¨ν ToDo 리μ€νΈ μ ν리μΌμ΄μ μ λ§λλ κ²μ λλ€. μ΄ νλ‘μ νΈλ₯Ό ν΅ν΄ DOM μ‘°μ, μ΄λ²€νΈ μ²λ¦¬, λ‘컬 μ€ν λ¦¬μ§ νμ© λ± κΈ°λ³Έμ μΈ μλ°μ€ν¬λ¦½νΈ κ°λ μ μ΅ν μ μμ΅λλ€. ToDo νλͺ© μΆκ°, μμ , μλ£ νμ λ±μ κΈ°λ₯μ ꡬννλ©°, μ€μ μΉ μλΉμ€μμ μ¬μ©λλ κΈ°λ³Έμ μΈ κΈ°λ₯λ€μ κ²½νν΄ λ³Ό μ μμ΅λλ€. μ½λ μμ μ ν¨κ» μμΈν μ€λͺ μ μ 곡νμ¬ μ΄λ³΄μλ μ½κ² λ°λΌν μ μλλ‘ κ΅¬μ±νμ΅λλ€.
μ½λ μμ:
// ... (ToDo 리μ€νΈ μ½λ μμ) ...
C. νλ‘μ νΈ 2: μ€μκ° μ±ν μ ν리μΌμ΄μ ꡬν
λ λ²μ§Έ νλ‘μ νΈλ μ€μκ° μ±ν μ ν리μΌμ΄μ μ ꡬννλ κ²μ λλ€. μ΄ νλ‘μ νΈμμλ WebSocket APIλ₯Ό νμ©νμ¬ μ€μκ° λ°μ΄ν° μ μ‘μ ꡬννλ λ°©λ²μ λ°°μ°κ² λ©λλ€. ν΄λΌμ΄μΈνΈμ μλ² κ°μ ν΅μ κ³Όμ μ μ΄ν΄νκ³ , μ€μκ° λ°μ΄ν° μ²λ¦¬μ νμν μλ°μ€ν¬λ¦½νΈ κΈ°μ λ€μ μ΅ν μ μμ΅λλ€. Node.jsμ κ°μ λ°±μλ κΈ°μ κ³Ό μ°λνμ¬ μ€μ μ±ν μλΉμ€λ₯Ό ꡬμΆνλ κ²½νμ μ 곡ν©λλ€.
D. νλ‘μ νΈ 3: κ°λ¨ν μΉ κ²μ μ μ
μΈ λ²μ§Έ νλ‘μ νΈλ κ°λ¨ν μΉ κ²μμ μ μνλ κ²μ λλ€. HTML5 Canvas APIλ₯Ό νμ©νμ¬ 2D κ²μμ μ μνκ³ , μλ°μ€ν¬λ¦½νΈλ₯Ό μ΄μ©νμ¬ κ²μ λ‘μ§μ ꡬννλ λ°©λ²μ λ°°μ°κ² λ©λλ€. μΊλ¦ν° μ΄λ, μΆ©λ κ°μ§, μ μ κ³μ° λ± κ²μ κ°λ°μ νμν λ€μν κΈ°μ λ€μ μ΅ν μ μμ΅λλ€. μ΄ νλ‘μ νΈλ₯Ό ν΅ν΄ μλ°μ€ν¬λ¦½νΈλ₯Ό νμ©ν μ°½μμ μΈ νλ‘μ νΈ κ°λ° λ₯λ ₯μ ν₯μμν¬ μ μμ΅λλ€.
E. λ§λ¬΄λ¦¬
μ΄ κΈμμ μκ°λ νλ‘μ νΈλ€μ ν΅ν΄ μλ°μ€ν¬λ¦½νΈ μ€λ ₯μ ν₯μμν€κ³ , μ€μ μΉ μλΉμ€ κ°λ°μ νμν μ€λ¬΄ λ₯λ ₯μ ν€μΈ μ μκΈ°λ₯Ό λ°λλλ€. κ° νλ‘μ νΈλ λ¨κ³μ μΌλ‘ μ§νν μ μλλ‘ μ€κ³λμμΌλ©°, λμ± μ¬νλ λ΄μ©μ μνλ λΆλ€μ μν΄ μΆκ°μ μΈ μλ£μ λ§ν¬λ₯Ό μ 곡ν©λλ€. μλ°μ€ν¬λ¦½νΈλ₯Ό λ°°μ°κ³ μΆμ λͺ¨λ λΆλ€μκ² λμμ΄ λκΈ°λ₯Ό κΈ°λνλ©°, μμΌλ‘λ λμ± μ μ΅ν μ½ν μΈ λ₯Ό μ 곡νλλ‘ λ Έλ ₯νκ² μ΅λλ€.
“`.