
you are here
459
11
章
Proxy
パターン
アルバムジャケット仮想プロキシの設計
<<interface>>
Icon
getIconWidth()
getIconHeight()
paintIcon()
ImageProxy
subject
getIconWidth()
getIconHeight()
paintIcon()
getIconWidth()
getIconHeight()
paintIcon()
ImageIcon
画像を表示するクラス
javax.
swing.ImageIcon
これがプロキシです。プロキシはま
ずメッセージを表示し、画像を読み
込むと
ImageIcon
に委譲して画像を
表示します。
ユーザインタフェース
に画像を表示するため
の
Swing Icon
インタ
フェース
アルバムジャケットビューアのコードを書く前に、クラス図を確認しましょう。この
クラス図はリモートプロキシのクラス図と似ていますが、こちらはプロキシを使って、
実際にネットワーク上のどこかにあるオブジェクトではなく、(ネットワーク経由で
Icon
データを取得する必要があるため)作成にコストがかかるオブジェクトを隠しています。
ImageProxy
がまず
ImageIcon
を作成し、ネットワーク
URL
から
ImageIcon
の読み込みを開始する。
画像バイトの取得中には、
ImageProxy
は「アルバムジャケットを読み込
み中です。お待ちください」と表示する。
画像を完全に読み込んだら、
ImageProxy
はすべてのメソッド呼び出し ...