π Chapter 18: μΈλΆ μ¬ν μ²λ¦¬
νμβ
- νμμ μ΄λ€ κ°λ μ μλ³νλ λ° μ¬μ©νλ μμΉμ§μ μ νμ μΌλ‘, μ½λ κ·λͺ¨κ° 컀μ§μ λ°λΌ κ΄λ ¨ μλ μ κΈ°λ₯μ μ§μ΄λ£μ κ³³μΌλ‘ λ§λ ¨ν΄μ€λ€.
public class Item {
public final String identifier;
public final int stopPrice;
public Item(String identifier, int stopPrice) {
this.identifier = identifier;
this.stopPrice = stopPrice;
}
// μ΄ν equals(), hashCode(), toString()
}
π κ³ μ°°β
π μ μ§μ μΌλ‘ λ§λ€μ΄μ§λ μ¬μ©μ μΈν°νμ΄μ€β
- κ°λ° λ§λ°μ§ λ¨κ³μμ μ¬μ©μ μΈν°νμ΄μ€λ₯Ό κ΅μ₯ν λ§μ΄ λ³κ²½νλ κ²μ²λΌ 보μΈλ€. νμ§λ§ μ λ΅μ "κ·Έλκ·Έλ λ€λ₯΄μ§λ§ μκ°λ³΄λ€λ μ νμ μ¬μ§κ° λ§λ€."μ΄λ€.
- μ΄ μμ μ²λΌ κ°λ¨ν μ ν리μΌμ΄μ μ κ²½μ°, μμν λ μ¬μ©μ μΈν°νμ΄μ€μ μ¬μ©μ±κ³Ό μμ§μ±μ ν보ν μ μλλ‘ μ’ λ μΈλΆμ μΌλ‘ λ€λ¬λ νΈμ΄ λ νλΉν κ²μ΄λ€. νΉν ν μ€νΈμ μ½λλ₯Ό 무κ²κ² νμ§ μκ³ μ μ°νκ² κ΅¬μ‘°ννλ©΄ λ³ννλ μꡬμ λμν μ μλ€λ μ μ κ°μ‘°νκ³ μΆκΈ°λ νλ€.
- μꡬ μ¬νμ΄ λ°λλ€λ μ¬μ€μ μκ³ μμΌλ©°, νΉν μ ν리μΌμ΄μ μ μ΄μ νκ²½μ λ°°μΉν λ κ·Έλ¬νλ―λ‘ λ³νμ λμν μ μμ΄μΌ νλ€.
π μ¬μ ν μ ν¨ν λ€λ₯Έ λͺ¨λΈλ§ κΈ°λ²β
- μν μ μ΄ λ€μ΄μ΄κ·Έλ¨μ μ’μ μ μ μν μ μ΄ λ€μ΄μ΄κ·Έλ¨μ΄ ν μ€νΈμ μ§μ λμνκΈ° λλ¬Έμ μ°λ¦¬κ° λͺ¨λ κ°λ₯μ±μ λ€λ£¨κ³ μμμ 보μ¬μ€ μ μλ€λ κ²μ΄λ€.
- TDDλ₯Ό νκ³ μ΄λ»κ² ν΄μΌ ν γΉμ§ νμ μ΄ μμ§ μμ λλ λλλ‘ λλμκ°μ μμΈ μΉ΄λλ₯Ό νΌμ²λ³΄κ±°λ μνΈ μμ©μ κ·Έλ €λ³΄λ©΄μ μ¬λ°λ₯Έ λ°©ν₯μΌλ‘ λμκ°λ λ° λμμ μ»μ μ μλ€.
π λλ©μΈ νμ μ΄ λ¬Έμμ΄λ³΄λ€ λ«λ€β
- λλ©μΈμ λͺ ννκ² νννλ μκ³ λ₯Ό μλΌμ§ μμμ λ μ νμ νμ΄ μ’ λ λμ΄μ§κΈ°λ νλ€.
- λλ©μΈ νμ
μ΄
String
λΏ μλλΌ μ»¬λ μ μ λΉλ‘―ν΄ λ€λ₯Έ λ΄μ₯ νμ κΉμ§ κ°μΈλλ‘ μ μνλ νΈμ΄ λμ λκ° μλ€. μ°λ¦¬κ° ν΄μΌ ν μΌμ μ€μ€λ‘μ μΆ©κ³ λ₯Ό μμ§ μκ³ μ μ©νλ κ²μ΄λ€.