2009/03/11 10:31
RL.C omputer
Message Passing.
상속. 다형성. 캡슐화. 같은 건 그냥 Message Passing을 지원하기 위한 도구에 불과함.
클래스와 인스턴스 개념도 마찬가지.
모든 행동 양식은 '개체가 메세지를 받아들일 수 있느냐'로 결정된다.
-- 이런 관점에서 보면 Common Lisp이나, Erlang 같은 함수형 언어.
Javascript나 IO 등의 ProtoType Base 언어.
등도 모두 OOP의 핵심개념은 관통하고 있다.
특히 Erlang의 메시징 프로세스는 최초의 개체지향 언어인 SmallTalk와 유사하다.
오히려 c#, Java, C++ 등은 . Message라는 것을 Function Call 화 시켜 버렸다.
그리고 나서 그걸 래핑해 둔 것을 개체지향의 특성이라고 우기고 있다.
이제 제발
아무것도 모르는 프로그래밍 신입생들을 데리고 나서
개체지향의 3대 장점은 '상속. 다형성. 캡슐화' 라고 책에서 본 대로만 읊어대지좀 말자..
상속. 다형성. 캡슐화. 같은 건 그냥 Message Passing을 지원하기 위한 도구에 불과함.
클래스와 인스턴스 개념도 마찬가지.
모든 행동 양식은 '개체가 메세지를 받아들일 수 있느냐'로 결정된다.
-- 이런 관점에서 보면 Common Lisp이나, Erlang 같은 함수형 언어.
Javascript나 IO 등의 ProtoType Base 언어.
등도 모두 OOP의 핵심개념은 관통하고 있다.
특히 Erlang의 메시징 프로세스는 최초의 개체지향 언어인 SmallTalk와 유사하다.
오히려 c#, Java, C++ 등은 . Message라는 것을 Function Call 화 시켜 버렸다.
그리고 나서 그걸 래핑해 둔 것을 개체지향의 특성이라고 우기고 있다.
이제 제발
아무것도 모르는 프로그래밍 신입생들을 데리고 나서
개체지향의 3대 장점은 '상속. 다형성. 캡슐화' 라고 책에서 본 대로만 읊어대지좀 말자..

