1. μ± μμ κΈ°μ΅νκ³ μΆμ λ΄μ©
μ¬λ¬λΆμ μλ²½ν μννΈμ¨μ΄λ₯Ό λ§λ€ μ μλ€.
μ΄ λ§μ μμ²λ°μλκ°? κ·Έλ¬λ©΄ μ λλ€. μΆμ κ³΅λ¦¬λ‘ μΈμ νκ³ λ°μλ€μ¬λΌ. κ·Έλ¦¬κ³ μΆννλΌ.
μλ²½ν μννΈμ¨μ΄λ μ‘΄μ¬νμ§ μκΈ° λλ¬Έμ΄λ€. -145p
μ€μ©μ£Όμ νλ‘κ·Έλλ¨Έλ λ°©μ΄μ μΈ μ½λ©μμ ν κ±Έμ λ λμκ°λ€. μ€μ©μ£Όμ νλ‘κ·Έλλ¨Έλ μκΈ° μμ μμ λ―Ώμ§ μλλ€.
μ΄λ λꡬλ, μ¬μ§μ΄λ μκΈ° μμ λ μλ²½ν μ½λλ₯Ό μμ±ν μ μμμ μκΈ° λλ¬Έμ μ€μ©μ£Όμ νλ‘κ·Έλλ¨Έλ μμ μ μ€μμ λλΉν λ°©μ΄μ±
μ λ§λ ¨νλ€. -146p
[23. κ³μ½μ μν μ€κ³]
μ μ§ν κ±°λλ₯Ό 보μ₯νλ μ΅μ μ ν΄λ² μ€ νλλ 'κ³μ½'μ΄λ€. μννΈμ¨μ΄ λͺ¨λμ΄ μλ‘ μν΅νλ κ²μ λκΈ° μν΄ κ³μ½κ³Ό λμΌν κ°λ
μ μ¬μ©ν μ μλ€. -147p
DBC(Design By Contract) : λ¨μνμ§λ§ κ°λ ₯ν κΈ°λ²μΌλ‘, νλ‘κ·Έλ¨μ μ νμ±μ 보μ₯νκΈ° μν΄ μννΈμ¨μ΄ λͺ¨λμ κΆλ¦¬μ μ±
μμ λ¬Έμννκ³ ν©μνλ λ°μ μ΄μ μ λ§μΆλ€.
μ νν νλ‘κ·Έλ¨μ΄λ? : μμ μ΄ νλ μΌμ΄λΌκ³ μ£Όμ₯νλ κ²λ³΄λ€ λ§μ§λ μ μ§λ μκ² λ± κ·Έλ§νΌλ§ νλ νλ‘κ·Έλ¨.
μ΄ λ΄μ©λ€μ λ¬Έμννκ³ κ²μ¦νλ κ²μ΄ 'κ³μ½μ μν μ€κ³'μ ν΅μ¬μ΄λ€.
1) μ ν쑰건 : 루ν΄μ μꡬμ¬ν.
2) νν쑰건 : 루ν΄μ΄ μλ£λμμ λμ μν, 루ν΄μ μΈμ κ° μ’
λ£λ¨μ μλ―Έ.
3) ν΄λμ€ λΆλ³μ
[24. μ£½μ νλ‘κ·Έλ¨μ κ±°μ§λ§μ νμ§ μλλ€]
λ¬Έμ μ μ½λλ μ μμ μΈ μν©μμλ μ€ν¨νμ§ μμμ κ²μ΄λ€. νμ§λ§ μ°λ¦¬λ μ§κΈ λ°©μ΄μ μΌλ‘ μ½λ©νκ³ μλ€. λ°μ΄ν°κ° μ°λ¦¬κ° μκ°νλλλ‘μΈμ§, μλΉμ€μμ μλνλ μ½λκ° μ°λ¦¬κ° μκ°νλ κ·Έ μ½λμΈμ§ νμΈν΄μΌ νλ€. νμν λΌμ΄λΈλ¬λ¦¬λ€μ΄ μ¬λ°λ₯Έ λ²μ μΌλ‘ μ€μ λ‘ λ‘λλλμ§λ νμΈν΄μΌ νλ€.
λͺ¨λ μ€λ₯λ μ 보λ₯Ό μ€λ€. -159p
λ§μΉμ§ λ§κ³ λ©μΆ°λΌ. λ°©κΈ μμ μ μλ μΌμ΄ λ°μνλ€λ κ²μ μ½λκ° λ°κ²¬νλ€λ©΄ νλ‘κ·Έλ¨μ λλ μ ν¨νμ§ μλ€κ³ ν μ μλ€. μ΄ μμ μ΄νλ‘ νλ μΌμ λͺ¨λ μμμ©μ κ² λλ€. λλλ‘ λΉ¨λ¦¬ μ’
λ£ν μΌμ΄λ€. -161p
[25. λ¨μ μ νλ‘κ·Έλλ°]
κ·Έλ° μΌμ μ λ μΌμ΄λ 리 μμ΄. μ΄λ°μμΌλ‘ μμ μ κΈ°λ§νμ§ λ§μ, νΉν μ½λ©ν λλ.
μ΄λ° μκ°λ€μ΄ λ λ€λ©΄ κ·Έλ° μΌμ νμΈνλ μ½λλ₯Ό μΆκ°νλΌ : λ¨μ λ¬Έ(assertion)μ μ¬μ©νλ κ²μ΄λ€. λ§€κ°λ³μλ κ²°κ³Όκ° μ λ nullμ΄μ΄μλ μ λλ€λ©΄ λͺ
μμ μΌλ‘ κ²μ¬νλΌ.
νμ§λ§ μ§μ§ μ€λ₯ μ²λ¦¬λ₯Ό ν΄μΌ νλ κ³³μ λ¨μ μ λμ μ¬μ©νμ§λ λ§λΌ. λ¨μ μ κ²°μ½ μΌμ΄λλ©΄ μ λλ κ²λ€μ κ²μ¬νλ€. -163p
μ°λ¦¬μ 첫 λ²μ§Έ λ°©μ΄μ μ κ°λ₯ν μ€λ₯λ₯Ό λͺ¨λ κ²μ¬νλ κ²μ΄κ³ , κ·Έ λ€μμ κ·Έλ¬κ³ λ λμΉ κ²μ μ‘μλ΄κΈ° μν΄ λ¨μ μ μ¬μ©νλ κ²μ΄λ€. νλ‘κ·Έλ¨μ μΆμ ν λ λ¨μ κΈ°λ₯μ κΊΌ λ²λ¦¬λ κ²μ μ€νκΈ° 곑μλ₯Ό νλ©΄μ μ°μ΅μΌλ‘ ν λ² κ±΄λ λ΄€λ€κ³ κ·Έλ¬Ό μμ΄ κ±΄λλ κ²κ³Ό λΉμ·νλ€. -165p
[26. 리μμ€ μ¬μ©μ κ· ν]
μμ μ΄ μμν κ²μ μμ μ΄ λλ΄λΌ, μ΄μμ μΌλ‘ λ§ν΄μ 리μμ€λ₯Ό ν λΉνλ 루ν΄μ΄ ν΄μ λν μ±
μμ ΈμΌ νλ€λ κ²μ΄λ€, -169p
μ§μμ μΌλ‘ νλνλΌ.
[27. ν€λλΌμ΄νΈλ₯Ό μμκ°μ§ λ§λΌ]
μ°λ¦¬λ λ무 λ¨Ό λ―Έλλ λ΄λ€λ³Ό μ μκ³ , μ λ©΄μμ λ²μ΄λ κ³³μΌμλ‘ λ μ΄λ‘λ€.
μμ λ¨κ³λ€μ λ°μλΌ. μΈμ λ. λ λννκΈ° μ μ νΌλλ°±μ νμΈνκ³ μ‘°μ νλΌ. νΌλλ°±μ λΉλλ₯Ό μ¬λ¬λΆμ μ ν μλλΌκ³ μκ°νλΌ.
νΌλλ°± : μ¬λ¬λΆμ νλμ λ
립μ μΌλ‘ νμ¦νκ±°λ λ°μ¦νλ κ²μ΄λΌλ©΄ λͺ¨λ νΌλλ°±μ΄λ€. -178p
μμΈνμ§ λ§λΌ. λλΆλΆμ κ²½μ° λ΄μΌμ μ€λκ³Ό κ±°μ κ°μ κ²μ΄λ€. νμ§λ§ νμ νμ§λ λ§λΌ. -180p
2. κΆκΈν λ΄μ© κ³Ό μ μ΄ν΄λμ§ μμ λ΄μ©μ λν μ 리
@DBC ꡬν
'π» κ°λ°μ μ΄μΌκΈ° > βοΈ μ λ¦¬λ ΈνΈ' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[TIL] 6μ₯ λμμ± (0) | 2022.05.26 |
---|---|
[TIL] 5μ₯ ꡬλΆλ¬μ§κ±°λ λΆλ¬μ§κ±°λ (0) | 2022.05.22 |
[TIL] 3μ₯ κΈ°λ³Έλꡬ (0) | 2022.05.19 |
[TIL] 2μ₯ μ€μ©μ£Όμ μ κ·Όλ² (0) | 2022.05.16 |
[TIL] μλ¬Έ, 1μ₯ μ€μ©μ£Όμ μ² ν (0) | 2022.05.14 |