객체 지향과 인지 능력 인간은 본능적으로 세상을 독립적이고 식별 가능한 객체의 집합으로 바라보기 때문에 객체 지향 패러다임은 직관적이고 이해하기 쉽다. 이러한 객체 지향은 실존하고 구체적인 개념뿐만 아니라 추상적인 개념도 포함되게 된다. 예를 들어 과거의 결제 내역과 지금 진행 중인 결제 내역을 구분하는 것은 어렵지 않은 일이다. 객체를 세분화시키는 행위는 복잡성을 줄여 이해를 높이고자 하는 것이다. 객체, 그리고 이상한 나라 작가는 객체를 설명하기 위해 이상한 나라의 앨리스 이야기를 예를 들어 설명하고 있다. 앨리스는 아름다운 정원에 들어가기 위해 자신의 키를 변화시켜야 하는데 변화는 앨리스의 행동 때문에 발생한다. 글을 읽으며 나도 모르게 앨리스의 키는 멤버변수가 될 수 있을 것이고, 키를 변화시키는..
객체 지향? 객체 지향이라는 말을 보거나 들었을 때 처음 드는 생각은 클래스이다. 관련 있는 데이터를 한 곳에 모아둔 것, 데이터를 다루기 위한 기능을 정의한 것 이를 객체 지향의 용어로 바꾼다면 추상화, 캡슐화, 다형성으로 표현 가능하다. 하지만 서문을 보자마자 객체를 잘못 이해하고 있다는 생각이 들었다. 작가님이 이 책을 통해 전하고자 하는 내용은 객체의 특징을 얼마나 잘 이해하고 있느냐가 아닌 객체를 객체답게 바라보고자 하는 것이다. 이 책을 읽고 다음의 목표를 천천히 달성해 나가야한다. 클래스가 아닌 객체를 바라보는 것 객체를 협력하는 공동체로 바라보는 것 객체에게 적절한 역할과 책임을 부여하는 것 앞선 개념을 프로그래밍 언어에 적용하는 것 객체 지향의 배경 실세계의 정보를 프로그램으로 구현하기 ..