soutaroブログスマートフォン用の表示で見るスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。読者です読者をやめる読者になる読者になるsoutaroブログこの広告は、90日以上更新していないブログに表示しています。2005-09-01VCLよく知らない人間があれこれ言うのは気が引けるのですがhttp://d.hatena.ne.jp/lethevert/20050829/p5このように書けば、既存の任意の木構造のデータオブジェクトに対して、Nodeインターフェースを適用するだけで、TreeViewコンポーネントを使って表示することができます。それってそんなに嬉しいの?と思ったので。Delphiの型システムを良く知らないので、変なこと言うかもしれませんが、Javaと同じだと仮定します。GUIにデータを表示するために、オブジェクトにGUIのためのインタフェースを実装しておくことは、不自然な気がします。不自然とかじゃなくって、経験的にそれはやらないな、と思うわけですね。DelphiとかVBとかC#とかの場合に限ると。表示したいオブジェクトのクラスに特定のインタフェースを実装しておかなくてはいけないという状況は、おかしいと思うんですよ。AとBとCで表示するかもしれないから、それぞれに対応するIAとIBとICを実装しておこう、なんてばかげてると思うわけです。IAを実装しないオブジェクトを表示しようと思ったら、そこで行き詰るわけですし。それよりは「Aで表示することになったらAに対応するValueObujectを作成する」ほうがましです。今あるオブジェクトからいちいちValueObjectに変換するプログラムを書かなくてはいけないというのは、確かにめんどくさいんですが。それはそういう設計思想であるという問題であり、欠点かもしれませんが、この欠点の解決方法は存在しないと思います。DelphiではなくRubyだったら、GUIで表示するオブジェクトに特定のインタフェース(メソッド群)を要求することは問題ないと思います。Rubyでは既存のクラスに任意のメソッドを実装することができますから。Aで表示する際に必要なインタフェースIAは、必要になった時点で実装すれば良い。Blog|ブログを報告する。