클래스 설계? 타입 설계?
C++에서 새로운 클래스를 설계하는다는것은 타입을 설계하는 것과 같다. 왜냐하면 그 클래스에는 operator 오버로드, 메모리 할당 및 해제, 객체 초기화 및 종료 등 모두 클래스에서 하기 때문이다.


타입은 어떻게 설계 할것인가?
EC++ 3판에서는 많은 것들 중 고수들은 몇가지 질문을 스스로 던저 자신을 괴롭히며 만든다고 한다.

1. 새로 정의한 타입의 객체 생성 및 소멸은 어떻게 이루어져야 하는가?
2. 객체 초기화는 객체 대입과 어떻게 달라야 하는가?
3. 새로운 타입으로 만든 객체가 값에 의해 전달되는 경우에는 어떤 의미를 줄 것인가?

4. 새로운 타입이 가질 수 있는 적법한 값에 대한 제약은 무엇으로 잡을 것인가?
5. 기존의 클래스 상속 계통망에 맞출 것인가?
6. 어떤 종류의 타입 변환을 허용할 것인가?

7. 어떤 연산자와 함수를 두어야 의미가 있는가?
8. 표준 함수들 중 어떤 것을 허용하지 말 것인가?
9. 새로운 타입의 멤버에 대한 접근권한을 어느 쪽에 줄 것인가?

10. 선언되지 않은 인터페이스로 무엇을 둘 것인가?
11. 새로 만드는 타입이 얼마나 일반적인가?
12. 정말로 꼭 필요한 타입인가?



.. 이 질문의 진정한 의미 파악은 할수 없었다 2007/06/05 01:15



이것만은 잊지 말자!
1. 클래스 설계는 타입 설계라는 점을 잊지 말자!


관련링크 - 이해가 안갈때는 관련글들을 마구 잡이식으로 읽어 생각해 보면, 이해가 잘 간다.
http://cool-uk.tistory.com/category/DEV-JAVA
http://poets11.tistory.com/29
http://www.ologist.co.kr/266
http://kldp.org/node/39533
http://gyumee.egloos.com/1021396
http://babonamu.egloos.com/569846
http://blue4lu.egloos.com/1678498
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 라이프코리아트위터 공유하기
  • shared
  • 카카오스토리 공유하기