객체지향의 사실과 오해

1. 협력하는 객체들의 공동체

객체지향이란 무엇인가요?

우성 : 실세계와 굳이 대응되진 않으면서도 이해 가능한 범주에 있는 것.

동시에 유지 보수가 용이한 객체가 있다면 좋은 객체지향이라고 할 수 있을 것 같다.

주형 : 객체를 정의하는 기준은 무엇일까요?

우성 : 상태

객체는 상태와 행위를 관리하므로 상태가 없다면 객체라고 정의하기 모호하다.

객체는 자율성이 중요하다. 상태가 정의되어있지 않다면 행위 또한 고정되므로 자율성이 있다고 말하기 어렵다.

따라서 헬퍼 객체, 인스턴스 변수가 없는 객체들은 객체라고 말하기 어렵다. 객체보다는 메서드의 ‘묶음’에 가깝다.

유틸리티(헬퍼) : 필드가 없으면 유틸리티와 동일하다 혹은 단순한 메서드의 집합이다

정적 메서드만을 가지고 있고, 상태를 내포하지 않는 구조

승준 : 개발 기능보단 개발론에 가깝다. 시스템을 구성하는 방법 중에 하나이다.

상황마다 유용한 정도가 다르기 때문에 정답을 가르기 어려운 부분이 있다.

객체지향이란 정의를 짓는 것이다.