SqueakByExample:12.7: Difference between revisions

From 흡혈양파의 번역工房
Jump to navigation Jump to search
(번역수정)
 
(이미지 주석 수정)
Line 1: Line 1:
==Metaclass 의 메타클래스는 Metaclass의 인스턴스입니다.==
==Metaclass 의 메타클래스는 Metaclass의 인스턴스입니다.==


[[image:TranslucentMetaclassClassClass.png|none|1024px|thumb|그림 12.10: 모든 메타클래스들은 심지어 Metaclass의 메타클래스이기도 한, 클래스 Metaclass의 인스턴스입니다.(12.6에 같은 그림이 있습니다)]]
[[image:TranslucentMetaclassClassClass.png|none|1024px|thumb|그림 12.10: 모든 메타클래스는 Metaclass 의 인스턴스이며 Metaclass 의 메타클래스도 마찬가지입니다.]]





Revision as of 16:05, 16 September 2013

Metaclass 의 메타클래스는 Metaclass의 인스턴스입니다.

그림 12.10: 모든 메타클래스는 Metaclass 의 인스턴스이며 Metaclass 의 메타클래스도 마찬가지입니다.


답변되어야 할 마지막 질문은 Metaclass class의 클래스가 무엇인가? 입니다.

답변은 단순합니다. 그 클래스는 메타클래스이며, 시스템에 있는 모든 다른 메타클래스들 처럼, 반드시 Metaclass의 인스턴스가 되어야 합니다. (그림 12.10을 보십시오)

그림은 Metaclass 자체의 메타클래스를 포함하여, 어떻게 모든 메타클래스 Metaclass의 인스턴스인지를 보여드립니다. 만약 여러분이 그림 12.9와 12.10을 비교하신다면, 메타클래스 계층이, 오브젝트 클래스에 이르기까지 클래스 계층을 어떻게 완벽하게 반영하는지를 보게 되실 것입니다.

다음 예시는, 그림 12.10이 정확하다는 것을 나타내기 위해 클래스 계층도를 조회하는 방법을 보여드립니다. (실제로, 여러분은 우리가 악의없는 거짓말을 하였다는 것을 알게 되실 것입니다. Object class superclass ⇒ ProtoObject class이며, ⇒ Class가 아닙니다. 스퀵에서, 우리는 Class에 도달하기 위해 더 높은 상위 클래스로 가야 합니다)


예시 12.1: 클래스 계층

TranslucentColor superclass        Color
Color superclass        Object


예시 12.2: 평행 메타클래스 계층

TranslucentColor class superclass        Color class
Color class superclass        Object class
Object class superclass superclass        Class "NB: skip ProtoObject class"
Class superclass        ClassDescription
ClassDescription superclass        Behavior
Behavior superclass        Object


예시 12.3: Metaclass의 인스턴스

TranslucentColor class class        Metaclass
Color class class        Metaclass
Object class class        Metaclass
Behavior class class        Metaclass


예시 12.3: Metaclass 의 class 는 Metaclass 입니다

Metaclass class class        Metaclass
Metaclass superclass        ClassDescription


Notes