next up previous contents
: Squeak中で利用できる開発環境 : Squeak : Squeakとは   目次

モーフ

モーフ(Morph)とは、数値やデータベースのような抽象的なオブジェクトではなく、丸や四角など、我々の目に見える"姿"をもった具体的なオブジェクトのSqueakシステムにおける呼称である。Squeak(のmorphic project内)では、ウインドウ、メニューなど画面上のあらゆるものが Morph で構成されている。モーフは簡単に言えば、自らがメソッドを持ち、互いに連携が可能な仕組みを持つドロー系ソフトの基本図形オブジェクトと同じようなものである。元々はSelfと呼ばれるプロトタイプベースのオブジェクト指向言語および環境で開発されたMorphicのために考案されたものであるが、当初ビットマップ画像しか扱えなかったSqueakのマルチメディア機能を強化する目的で、開発の早い時期にSqueakプロジェクトに合流したオリジナルの考案者自らの手で移植され組み込まれた。モーフは単に表示されているだけではなく、ビューワーでその中身を観察したり、スクリプトを書くことで新しい動作を追加したりすることができる。

Squeakには、これらモーフに対して動きや性質を変化させる指示をプログラムとして付加できる、非プログラマ向けのスクリプトシステムが「eToys」として提供されている。ユーザは、デスクトップをキャンバス代わりにしてモーフを好きなように配置し、それらに動きを与えることである種のソフトウェア作品を組み立てることが可能である。具体的にはモーフに対する命令を表すタイルを並べる事で、自動的にSmalltalkのコードを生成することができるようになっている。Squeakはその仮想イメージ(VI)を仮想マシン(VM)上に展開して動作するため、こうして作られた作品を仮想イメージに保存する事は可能だが、ひとつの作品の保存場所に巨大な仮想イメージをその都度用いる事は現実的ではない。そこで、Squeakの(morphic)プロジェクトには、デスクトップの様子をそのままファイルとして出力し、別の仮想イメージでもそれを読み込み再現できるような機能が付加されている[3]。



Deguchi Lab. 平成20年3月5日