[1999 年 4 月号] |
[Happy Squeaking!!]
5.Squeak演習: インターセッション
5.4 メタクラスの継承関係 つづき
メタのメタ、さらにメタ
メタの概念は相対的なものであり、どこを視点とするかで、無限に続いていくという話しを最初にしました。Smalltalkでは、これが、Metaclassのメタ関係の循環となって表れています。
先ほどの図でMetaclassに注目した場合、
Metaclass =meta => Metaclass class (Account =meta=> Account class と同じ)
Metaclass =generate=> Metaclass class (Metaclass =generate=> Account class と同じ)
という関係が成り立っているのです。
メタ関係を、Metaclass classを中心に書くと以下のようになっています。
標語風にいえば、
「MetaclassのclassはMetaclass class。Metaclass classのclassはMetaclass」
なのです。
以上がSmalltalkのメタモデルになります。難しいと思いますが、メタモデルを考えることは抽象的な思考の訓練にもなり、オブジェクト指向分析全般にも生きてきます。よくわからなかった場合は折りを見て振り返るようにしましょう。
では、演習ではこのメタモデルに手を加えていくことにします。
© 1999-2001 OGIS-RI Co., Ltd. |
|