객체지향 시스템 디자인 원칙 - 실용적인 접근법

1. 실용적으로 접근하되, 딱 필요한 만큼만

  • 유지보수가 쉽고 단순한 객체지향 시스템을위해서는 최고의 디자인이 중요함
  • 하지만 우리의 주된 목표는 아름다운 디자인이 아니라 효율성
  • 좋은 디자인은 목표를 위한 수단일뿐 완벽함과의 사이에서 적절한 균형을 찾는것이 중요

2. 과감하게 리팩터링하되, 단 작은 단위로 나눠서

  • 리팩터링을 멈추면 안됨
  • 리팩터링의 필요성을 모를수 있음, 하지만 리팩터링은 수익률 높은 투자

3. 코드가 완벽하지 않다는 사실을 받아들여라

  • 완벽한 코드, 디자인, 아키텍처는 없지만 매일 더 나은 코드를 작성하기 위해 노력해야함

4. 재디자인을 고려하라

5. 여러분은 주니어 개발자들에 대한 책임이 있다