들어가며
- 습관을 들이기 위해 하루 하루 일지를 작성할 예정
루틴을 작성하는 이유
- 복잡성을 줄인다.
- 이해하기 쉬운 중간 단계의 추상화를 도입한다.
- 코드의 중복을 피한다.
- 서브 클래싱을 지원한다.
- 코드의 실행 순서를 감춘다.
- 포인터 연산을 감춘다.
- 이식성을 높인다.
- 복잡한 불린 테스트를 단순화한다.
- 성능을 개선한다.
클래스를 작성하는 이유
- 복잡성을 고립시킨다.
- 구현 세부 사항을 숨긴다.
- 변경의 효과를 제한한다.
- 전역 데이터를 숨긴다.
- 중앙 집중 관리한다.
- 코드의 재사용을 돕는다.
- 특정한 리팩터링을 수행한다.
Reference
스티브 맥코넬 지음, 서우석 옮김 『 코드 컴플리트 2nd edition 』, 위키북스(2017. 07. 28), 인용.
찰스 펫졸드, 『 Code, 하드웨어와 소프트웨어에 숨어있는 언어 』, 인사이트(2010 10 11), 인용.
스티브 프리먼, 냇 프라이스 지음, 이대엽 옮김, 『 테스트 주도 개발로 배우는 객체 지향 설계와 실천 』, 인사이트(2013 06 20), 인용.
앤드류 헌트, 데이비드 토머스 지음, 김창준, 정지호 옮김, 『 실용주의 프로그래머 』, 인사이트(2005 08 02), 인용.