객체지향 시스템 디자인 원칙 - 실용적인 접근법
1. 실용적으로 접근하되, 딱 필요한 만큼만
- 유지보수가 쉽고 단순한 객체지향 시스템을위해서는 최고의 디자인이 중요함
- 하지만 우리의 주된 목표는 아름다운 디자인이 아니라 효율성
- 좋은 디자인은 목표를 위한 수단일뿐 완벽함과의 사이에서 적절한 균형을 찾는것이 중요
2. 과감하게 리팩터링하되, 단 작은 단위로 나눠서
- 리팩터링을 멈추면 안됨
- 리팩터링의 필요성을 모를수 있음, 하지만 리팩터링은 수익률 높은 투자
3. 코드가 완벽하지 않다는 사실을 받아들여라
- 완벽한 코드, 디자인, 아키텍처는 없지만 매일 더 나은 코드를 작성하기 위해 노력해야함