이유
1. 소프트웨어는 항상 변화하기 때문이다.
구현 방법
1. 끊임없이 공부 해라;
2. 대입과 복사생성은 모든 클래스에 대해 처리해 두어야 한다.
3. 변경이 필요할 때 그 변경의 영향이 제한된 부분만 미치도록 코드를 설계한다.
4. 힘 닿는데까지 캡슐화 한다.
5. 구현에 관련된 상세한 부분은 외부에 노출시키지 않는다.
6. 개발 도구가 지원하는 기능에 맞추어 파일 범위(file-scope)의 정적 변수나 정적 함수를 선언하도록 한다.
7. 가상 기본 클래스가 필요한 설계는 피하는것이 좋다.
명언
아리송하면 int의 동작원리대로 만들지어다(when in doubt, do as the ints do)
클래스 설계가 점점 어려워 지는 시점이다.
1. 소프트웨어는 항상 변화하기 때문이다.
구현 방법
1. 끊임없이 공부 해라;
2. 대입과 복사생성은 모든 클래스에 대해 처리해 두어야 한다.
3. 변경이 필요할 때 그 변경의 영향이 제한된 부분만 미치도록 코드를 설계한다.
4. 힘 닿는데까지 캡슐화 한다.
5. 구현에 관련된 상세한 부분은 외부에 노출시키지 않는다.
6. 개발 도구가 지원하는 기능에 맞추어 파일 범위(file-scope)의 정적 변수나 정적 함수를 선언하도록 한다.
7. 가상 기본 클래스가 필요한 설계는 피하는것이 좋다.
명언
아리송하면 int의 동작원리대로 만들지어다(when in doubt, do as the ints do)
클래스 설계가 점점 어려워 지는 시점이다.
'책 정리 > More Effective C++ 1판' 카테고리의 다른 글
항목 35 : C++ 언어의 최신 표준안과 표준 라이브러리에 대해 익숙해지자 (0) | 2008.05.29 |
---|---|
항목 34 : 한 프로그램에서 C++와 C를 함께 사용하는 방법을 이해하자 (0) | 2008.05.29 |
항목 33 : 상속 관계의 말단에 있지 않은 클래스는 반드시 추상 클래스로 만들자 (0) | 2008.05.26 |
항목 31 : 함수를 두 개 이상의 객체(타입)에 대해 가상 함수처럼 동작하도록 만들기 (0) | 2008.05.26 |
항목 30 : 프록시(Proxy) 클래스 (0) | 2008.05.26 |
항목 29 : 참조 카운팅(reference Counting) (0) | 2008.05.26 |
항목 28 : 스마트 포인터(Smart Pointer) (0) | 2008.05.26 |
항목 27 : 힙에만 생성되거나 힙에는 만들어지지 않는 특수한 클래스 만드는 방법 (0) | 2008.05.22 |
항목 26 : 클래스 인스턴스의 개수를 의도대로 제한하는 방법 (0) | 2008.05.22 |
항목 25 : 생성자 함수와 비멤버 함수를 가상 함수처럼 만드는 방법 (0) | 2008.05.22 |
최근댓글