μ½λκ° μ¬λΌμ§ κ²μ΄λΌ λ§νλ μ¬λλ€μ΄ μλ€. νμ§λ§ μ΄ μ± μ μ½λλ νμ μ‘΄μ¬ν κ²μ΄λΌ λ§νλ€. κΆκ·Ήμ μΌλ‘ μ½λλ μꡬμ¬νμ νννλ μΈμ΄μ΄λ€. μꡬμ¬νμ λμ± κ°κΉμ΄ μΈμ΄λ₯Ό λ§λ€ μλ μκ³ , μꡬμ¬νμμ μ ν ꡬ쑰λ₯Ό λ½μλ΄λ λꡬλ₯Ό λ§λ€ μλ μλ€. νμ§λ§ μ΄λ μ
"μλκ° λΆλͺ νκ² μ΄λ¦μ μ§μΌλΌ" κ³ λ§νκΈ°λ μ½λ€. μ¬κΈ°μλ μλκ° λΆλͺ ν μ΄λ¦μ΄ μ λ§λ‘ μ€μνλ€λ μ¬μ€μ κ±°λ κ°μ‘°νλ€. μ’μ μ΄λ¦μ μ§μΌλ €λ©΄ μκ°μ΄ 걸리μ§λ§ μ’μ μ΄λ¦μΌλ‘ μ μ½νλ μκ°μ΄ ν¨μ¬ λ λ§λ€. μ΄λ¦ dλ μ무 μλ―Έλ λλ¬λ΄μ§ μλλ€. κ²½κ³Όμκ°μ΄λ λ μ§
ν¨μλ₯Ό λ§λλ 첫째 κ·μΉμ 'μκ²!'λ€. ν¨μλ₯Ό λ§λλ λμ§Έ κ·μΉμ 'λ μκ²!'λ€. μ΄ κ·μΉμ κ·Όκ±°λ₯Ό λκΈ°κ° κ³€λνλ€. κ·Έλ¬λ μ μλ μ€λ μνμ°©μ€λ₯Ό λ°νμΌλ‘ μμ ν¨μκ° μ’λ€κ³ νμ νλ€. λ μ§§κ², λ λ μ§§κ²,λ§λ€μλ‘ μ’λ€κ³ μ μλ μ€λͺ νλ€. λ€μ λ§ν΄ if
λμ μ½λμ μ£Όμμ λ¬μ§ λ§λΌ. μλ‘ μ§λΌ μ λ¬λ¦° μ£Όμμ κ·Έ μ΄λ€ μ λ³΄λ³΄λ€ μ μ©νλ€. κ·Έλ¬λ κ²½μνκ³ κ·Όκ±° μλ μ£Όμμ μ½λλ₯Ό μ΄ν΄νκΈ° μ΄λ ΅κ² λ§λ λ€. λΆμ νν μ£Όμμ μμ μλ μ£Όμλ³΄λ€ ν¨μ¬ λ λμλ€. λΆμ νν μ£Όμμ λ μλ₯Ό ννΉνκ³ μ€λνλ€. μ§μ€μ νκ³³μλ§ μ‘΄
νλ‘κ·Έλλ¨ΈλΌλ©΄ νμμ κΉλνκ² λ§μΆ° μ½λλ₯Ό μ§μΌ νλ€. μ½λ νμμ λ§μΆκΈ° μν κ°λ¨ν κ·μΉμ μ νκ³ κ·Έ κ·μΉμ μ°©μ€ν λ°λΌμΌ νλ€. μ½λ νμμ λ§μΆλ λͺ©μ > βλμκ°λ μ½λβκ° μ λ¬Έ κ°λ°μμ μΌμ°¨μ μΈ μλ¬΄λΌ μ¬κΈΈμ§λ λͺ¨λ₯΄κ² λ€. κ·Έλ¬λ μ€λ ꡬνν μ½λμ κ°λ
λ³μλ₯Ό privateμΌλ‘ μ μνλ μ΄μ κ° μλ€. λ¨λ€μ΄ λ³μμ μμ‘΄νμ§ μκ² λ§λ€κ³ μΆμ΄μλ€. κ·Έλ λ€λ©΄ μ΄μ§Έμ μλ§μ νλ‘κ·Έλλ¨Έκ° get ν¨μμ set ν¨μλ₯Ό λΉμ°νκ² publicμΌλ‘ μ μΈν΄ λΉκ³΅κ° λ³μλ₯Ό μΈλΆμ λ ΈμΆν κΉ?λ ν΄λμ€ λͺ¨λ 2μ°¨μ μ μ νννλ€. κ·Έλ°λ°
μλΉμ μ½λ κΈ°λ°μ μ μ μΌλ‘ μ€λ₯ μ²λ¦¬ μ½λμ μ’μ°λλ€. μ¬κΈ°μ μ’μ°λλ€λ ννμ μ½λ κΈ°λ°μ΄ μ€λ₯λ§ μ²λ¦¬νλ€λ μλ―Έκ° μλλ€. μ¬κΈ°μ κΈ° ν©μ΄μ§ μ€λ₯ μ²λ¦¬ μ½λ λλ¬Έμ μ€μ μ½λκ° νλ μΌμ νμ νκΈ°κ° κ±°μ λΆκ°λ₯νλ€λ μλ―Έμ΄λ€.μ΄ μ₯μμλ κΉ¨λνκ³ νΌνΌν μ½λμ νκ±Έ
μμ€ν μ λ€μ΄κ°λ λͺ¨λ μννΈμ¨μ΄λ₯Ό μ§μ κ°λ°νλ κ²½μ°λ λλ¬Όλ€. λλ‘λ ν¨ν€μ§λ₯Ό μ¬κ³ , λλ‘λ μ€ν μμ€λ₯Ό μ΄μ©νλ€. λλ‘λ μ¬λ΄ λ€λ₯Έ νμ΄ μ 곡νλ μ»΄ν¬λνΈλ₯Ό μ¬μ©νλ€. μ΄λ€ μμΌλ‘λ μ΄ μΈλΆμ½λλ₯Ό μ°λ¦¬ μ½λμ κΉλνκ² ν΅ν©ν΄μΌλ§ νλ€. μ΄ μ₯μμλ μννΈμ¨μ΄ κ²½κ³
μ μμΌκ³Ό TDD λνμ λ¨μ ν μ€νΈλ₯Ό μλν νλ νλ‘κ·Έλλ¨Έλ€μ΄ μ΄λ―Έ λ§μμ‘μΌλ©° μ μ λ λμ΄λλ μΆμΈλ€. νμ§λ§ μ°λ¦¬ λΆμΌμ ν μ€νΈλ₯Ό μΆκ°νλ €κ³ κΈνκ² μλλ₯΄λ μμ€μ λ§μ νλ‘κ·Έλλ¨Έλ€μ΄ μ λλ‘ λ ν μ€νΈ μΌμ΄μ€λ₯Ό μμ±ν΄μΌ νλ€λ μ’ λ λ―Έλ¬ν μ¬μ€μ λμ³ λ²λ Έλ€.T
νμ€ μλ° κ΄λ‘μ λ°λ₯΄λ©΄, κ°μ₯ λ¨Όμ λ³μ λͺ©λ‘μ΄ λμ¨λ€. μ μ κ³΅κ° μμκ° μλ€λ©΄ κ°μ₯ λ¨Όμ λμ¨λ€. λ€μμΌλ‘ μ μ λΉκ³΅κ° λ³μ, μ΄μ΄μ λΉκ³΅κ° μΈμ€ν΄μ€ λ³μκ° λμ¨λ€. κ³΅κ° λ³μκ° νμν κ²½μ°λ κ±°μ μλ€. λ³μ λͺ©λ‘ λ€μμλ κ³΅κ° ν¨μκ° λμ€λ©° λΉκ³΅κ° ν¨μλ μμ
볡μ‘μ±μ μ£½μμ΄λ€. κ°λ°μμκ²μ μκΈ°λ₯Ό μμκ°λ©°, μ νμ κ³ννκ³ μ μνκ³ ν μ€νΈνκΈ° μ΄λ ΅κ² λ§λ λ€.Ray Ozzie, Microsoft CTOλ³Έ μμ½μ μ΄ν΄κ° μ ν λ·λ°μΉ¨λμ§ μμ μμ½μ λλ€.. νμ΅μ©μΌλ‘ μ½κΈ°λ₯Ό κΆμ₯νμ§ μμ΅λλ€..λμλ νΌμμ κ΄λ¦¬ν μ μλ€. μ
μ°½λ°μ± : μ°½λ°(ε΅ηΌ)λλ λ μ€λ¦ νμμ νμ κ³μΈ΅(κ΅¬μ± μμ)μλ μλ νΉμ±μ΄λ νλμ΄ μμ κ³μΈ΅(μ 체 ꡬ쑰)μμ μλ°μ μΌλ‘ λμ°ν μΆννλ νμμ΄λ€. λν λΆμμ μμλλ νΉμ±μ μ°½λ°μ±(μμ΄: emergent property) λλ μ΄λ¨Έμ μ€(μμ΄: emergence
κ°μ²΄λ μ²λ¦¬μ μΆμνλ€. μ€λ λλ μΌμ μ μΆμνλ€.λμμ±κ³Ό κΉλν μ½λλ μ립νκΈ° μ΄λ ΅λ€.λ¨μΌ μ€λ λ νλ‘κ·Έλλ°μ μλμ μΌλ‘ μ¬μ΄ νΈμ μνλ€.λ€μ€ μ€λ λ μ½λλ λ§λ§ λ¨ΉμΌλ©΄ μ½λλ₯Ό μ½κ² μμ±ν μ μλ€.νμ§λ§ μ½κ² μμ±ν λ€μ€ μ€λ λ μ½λλ μμ€ν μ λΆνκ° ν° νκ²½μ
κΉ¨λνκ³ μ°μν νλ‘κ·Έλ¨μ ν λ°©μ λλ± λ΄λμ μ μλ€. νλ‘κ·Έλλ°μ κ³Όνλ³΄λ€ κ³΅μμ κ°κΉλ€.κΉ¨λν μ½λλ₯Ό μ§λ €λ©΄ λ¨Όμ μ§μ λΆν μ½λλ₯Ό μ§ λ€μ μ 리ν΄μΌ νλ€.λ¨Όμ 1μ°¨ μ΄μμ μ°κ³ , κ·Έ μ΄μμ κ³ μ³ 2μ°¨ μ΄μμ λ§λ€κ³ , κ³μ κ³ μ³ μ΅μ’ μμ λ§λ€μ΄μΌ νλ€.κΉλν μν