Study with Test-Driven Development: By Example, Kent Beck
- Quickly add a test.
- Run all tests and verify that the new addition fails
- Make some changes to the code
- Run all tests and verify that all succeed
- Refactor to eliminate duplication
- $5 + 10CHF = $10(환율이 2:1인 경우)
- $5 * 2 = $10
- amount를 private으로 만들기
- Dollar 부작용
- Money 반올림
- equals
- 5CHF * 2 = 10CHF
- hashCode()
- Equal null
- Equal object
- 5CHF * 2 = 10CHF
- Dollar/Franc 중복
- 공용 equals
- 공용 times
- Franc과 Dollar 비교하기
- 통화?
- testFrancMultiplication 제거
- all the kotlin files must be located in src directory
- 어떻게 설계해야 할지 명백하지 않으면 가짜 구현을 하고 리팩토링하는 식으로 접근하라
- 핵심이 되는 객체가 다른 부분에 대해서 될 수 있는 한 모르도록 노력한다. 그렇게 하면 핵심 객체가 가능한 오랫 동안 유연할 수 있다. (게다가 테스트하기에 쉬울 뿐 아니라, 재활용하거나 이해하기에 모두 쉬운 상태로 남아 있을 수 있다.)