https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=60550259
http://www.yes24.com/Product/Goods/18249021?pid=136927&ReturnURL=http://www.yes24.com&
책을 읽으며 느낀 점 정리
책의 내용 중 아주 일부분을 이해한만큼만 정리했기 때문에 정확한 정보를 위해선 책을 사서 읽어 보는 걸 권장합니다.
객체지향 패러다임의 목적
객체들로 이루어져 있는 현실 세계를 기반으로 새로운 세계를 창조하는 것
현실 세계를 모방하는 것이 아님
* 대표적인 예는 의인화 - 현실 세계에선 전화기가 스스로 전화를 걸 수 없지만 SW 세계에선 가능하다.
객체의 특징 (음료를 통해 키가 커지고 작아지는 앨리스의 예시)
- 상태 (state), 행동 (behavior), 식별자 (identity)
- 객체는 어떤 상태에 있더라도 유일하게 식별 가능
- 상태는 행동에 영향을 받는다.
- 행동의 결과는 상태에 영향을 받는다.
- 행동의 순서는 결과에 영향을 미친다.
- 객체의 상태를 구성하는 특징을 property라고 한다.
- property의 값은 행동에 영향을 받아 동적이기 때문에 상태는 특정 시점의 정보를 나타낸다.
- 행동이란 외부의 요청, 메시지를 받아 동작하고 반응하는 것, 자신의 상태를 변경 또는 다른 객체에게 메시지를 전달
- 메시지 송신자는 수신자의 상태 변경에 대해 알 수 없고 객체는 오직 행동을 통해 접근이 가능하다. (캡슐화)
캡슐화는 객체의 자율성을 높이므로 협력을 단순하고 유연하게 만든다.
객체와 객체는 연결되어 협력해 일한다.
- 1000원을 내면 1시간동안 컴퓨터와 사람은 연결되고 시공을 갈 수 있지만 1시간이 지나면 연결이 해제된다.
- 이 연결을 link라고 한다.
상호작용
- PC방은 사람이라는 객체가 1000원을 지불해야 1시간을 이용할 수 있는 상태가 된다.
모든 객체는 자율적이기 때문에 컴퓨터 객체는 시간이 지나면 스스로 잔여시간을 줄이는 행동을 한다. - 1000원을 지불하지 않으면 컴퓨터라는 객체를 이용할 수 없다.
- PC방에서 해당 아이디의 잔여 시간이 1분 이상이면 로그인을 할 수 있다.
- 로그인을 하고 나면 그 컴퓨터는 이용 중인 상태로 변경된다.
행동이 상태를 결정하기 때문에 설계를 할 때 상태가 아닌 행동에 초점을 맞춰 설계해야한다.
'Book > 객체지향의 사실과 오해' 카테고리의 다른 글
객체지향의 사실과 오해 C4 (0) | 2021.10.11 |
---|---|
객체지향의 사실과 오해 C3 (0) | 2021.09.04 |
객체지향의 사실과 오해 - C1 (0) | 2021.08.18 |