클린코드
리팩터링
테스트 주도 개발
객체지향의 사실과 오해