OOP Class with Plato idea theory

OOP Class with Plato idea theory를 알아보겠습니다.


OOP(Object-Oriented Programming, 객체 지향 프로그래밍)을 배우던 중, 플라톤의 이데아 이론과 비슷한 것 같아 한 번 적어봅니다.

여기에 적힌 글들은 순전히 저의 생각이며, 읽고 끄덕이셔도 좋고, 무슨 소리야 하면서 지나가셔도 좋습니다. ㅎㅎ

고대 그리스 철학자인 플라톤은 Idea(이데아)라는 이론을 선보였습니다.
이데아는 모든 사물의 원인이자 본질입니다. 현실 세계를 넘어 이상적인 세계를 말합니다. 이데아 세계의 사물들은 온전한 모습이며, 인간들은 이데아 세계를 봤지만 현실 세계로 돌아오면서 그 기억을 잊는다고 합니다.
하지만, 인간들은 완전히 그 기억을 잊은 게 아니기 때문에 기억할 수 있다고 합니다.

눈을 감고 호랑이를 떠올려보았을 때, 그 생각 하는 호랑이가 바로 이데아 속의 호랑이라는 겁니다.
현실 세계에는 큰 호랑이, 새끼 호랑이, 튼튼한 호랑이, 백호 등 여러 종류의 호랑이가 있지만, 우리가 호랑이라는 말을 듣고 상상한 호랑이는 하나입니다.

플라톤은 동굴에 비유하면서 이데아론을 펼칩니다.
본질인 이데아가 있고, 현실에서 우리는 그 이데아의 그림자를 본다는 것이죠, 즉 현실의 물체는 그림자에 불과해서 여러 종류의 물체로 존재할 수 있다는 말입니다.

여기서 OOP의 Class의 개념과 비슷한 것 같습니다.
우리는 Class를 만들 때, 이데아 속의 물체를 만드는 것과 같습니다.
이 Class를 object 또는 instance로 만들면, 그것은 현실의 그림자 물체와 같습니다.
Class의 모습은 하나의 모습이지만, 이 class에서 파생된 object 또는 instance의 경우 그 종류가 다양합니다.

고대의 그리스 철학자의 이론이 현대의 OOP Class 개념과 비슷한 것을 보고 참 많은 생각을 하였습니다.
우리는 고대인들보다 똑똑할 수 있다고 말할 수 있을까요?

감사합니다.


끝.


카테고리: Python

댓글

이 블로그의 인기 게시물

Python urllib.parse.quote()

Python OpenCV 빈 화면 만들기

tensorflow tf.random.uniform()

Android Notification with Full Screen

KiCad 시작하기 2 (PCB 만들기)

Android Minimum touch target size

Python bs4.SoupStrainer()

KiCad 시작하기 4 (기존 회로도 수정 및 추가)

음악 총보(Score), 파트보(Part)

tensorflow tf.expand_dims()