객체지향의 사실과 오해 2

[객체지향의 사실과 오해] 2. 이상한 나라의 엘리스

아기들을 포함한 세상 사람들은 세상을 뚜렷한 경계를 가진 객체들의 집합으로 바라본다. 객체지향과 인지 능력 객체란 인간이 분명하게 인지하고 구별할수 있는 물리적인 또는 개념적인 경계를 지닌 어떤 것이다. 하지만 실세계와 소프트웨어 세계의 객체의 유사성은 여기까지이다. 실세계의 객체는 사람의 도움없이 스스로 무언가를 할 수 없다. 소프트웨어 세계의 객체는 스스로 무언가를 할수 있다. 즉, 자율적이다. 객체, 그리고 이상한 나라 이상한 나라의 엘리스 이야기를 생각하며 객체란 무엇인지 알아보자 엘리스는 음료수를 마시면 키를 변경할수 있다. -> 엘리스는 키를 가지고있으며 상태를 변경가능 음료수를 마시면 키가 변경한다 -> 엘리스는 음료수를 마시는 행동을 했고 행동을 통해서 상태가 변경 음료수 마시기전 키가 1..

study with book 2021.07.17

[객체지향의 사실과 오해] 1. 협력하는 공동체

실세계와 객체지향 세계 객체지향에 대해서 배울때, (JAVA를 처음 배울때) 모든 사물(유형이던 무형이던)을 하나의 객체로 보는 실세계를 소프트웨어의 세계와 동일하다는 관점에서 객체지향을 배웠다. 그러나 실세계와 객체지향 세계에는 유사성이 매우 적고 거리가 멀다. 객체지향의 목적은 새로운 세계를 창조하는것!!! (실세계를 모방하는 것이 아니다.) 단순히 객체지향의 기반을 이루는 철학적 개념을 설명하는데 '실세계의 모방'이라는 문장이 적합할 뿐이다. 단순히 이 이유때문에 많은 곳에서 객체지향을 설명할 때, 실세계에 빗대며 설명한다. 그래도 실세계에 빗대어 설명하는 것만큼 이해가 쉬운게 없음! 협력하는 사람들(in 실세계) 협력, 역할, 책임 실세계에서 모든 것은 협력, 역할, 책임으로 이루어..

study with book 2021.07.16