객체 지향 방법의 최대 목표는 코드의 재사용(reuse)이다. (p.7) |
● 객체지향의 최대 목표가 코드의 재사용일까? 실제 작업에서는 그 이점을 크게 느끼기는 어렵다. 다른 사람이 만든 코드를 라이브러리로 제공하는 것은 꼭 객체지향방법론에만 적용되는 것은 아니다. jQuery와 같이 JavaScript 같은 언어에서도 라이브러리로 함수 Set을 제공한다.
특히, Virtual 및 Interface를 이용한 추상함수의 경우, 함수 상속자가 각각의 함수를 재구현해야 한다. 경험한 바에 따르면, Class를 상속한다고 해서 작업량이 늘 줄어드는 것은 아니다.
● 객체지향의 가장 큰 장점은, 오히려 각각의 객체간의 완전한 분리를 통한 수정 용이성이 아닐까? 전역변수를 철저하게 배재하고 깔끔하게 독립적으로 돌아가도록 잘 구현한 클래스는 나중에 수정이나 확장할 때도 큰 고민 없이 작업을 시작할 수 있다. 함수의 Overriding, Overloading 기능은 기존 코드를 Side effect 우려 없이 수정할 수 있도록 지원한다. C로 만든 범용 함수를 확장(ex. 함수 인자를 추가 하는 경우)하는 경우와 비교하면 이것은 정말 큰 이점이다.
'Studies > C++ Espresso' 카테고리의 다른 글
Chapter 8 LAB solution (4) | 2011.12.11 |
---|---|
Programming 08-07 (p.338) 클래스 설계 (0) | 2011.12.06 |
[Review] Chapter 01. p.14 ~ 15 Name Space 와 변수 (0) | 2011.09.06 |
뭐부터 할까? (4) | 2011.09.06 |
C++ Espresso 에스프레소 by 천인국 에 관한 Technical Review 및 과제 등록 게시판 입니다 (6) | 2011.02.21 |