ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

BREWマルチウィンドウ化のニュースと予想される問題点とカオル姫方式

2006-10-09 23:31:02 | ケータイ

 まず、このブログでは、以下のニュース
KDDI研究所、BREWでマルチウィンドウを実現するミドルウェア
http://k-tai.impress.co.jp/cda/article/news_toppage/31341.html

について、取り上げるのであって、菅山かおる選手について、書くわけではありません。

 検索エンジンで、菅山かおる選手についてしらべたら、きてしまった人は、本家のほうに、カオル姫ネタを書いておきました(このリンク先)ので、そちらのほうで、こたんのーくださいませ。

 とお断りしたところで、本題。




 KDDI研究所が、BREWでのマルチウィンドウ処理を行うミドルウェアを開発したそうだ。上記ニュースにも書かれているし、以下のプレスリリースにも書かれている。
BREW携帯電話向けのマルチウィンドウシステム
http://www.kddilabs.jp/pr_pdf/20061005KTAIWIN.pdf


 で、ここで問題になるのは、
・複数のアプリが立ち上げられるからマルチウィンドウになるのか?
・それとも、1つのアプリで、いくつものウィンドウが立ち上げられるのか?
ということだろう。

 もし、後者だとすると、(ウィリアムのいたずらは、個人であり、法人でないので、この辺の情報はさっぱり入ってこないので、これがどんなもんだか、よくわからない)ちょっと考えると、以下の問題が出てくる。

・複数のウィンドウを、同時に立ち上げることができるとしたら、どのウィンドウ
 にフォーカスが当たっているときでも、他のウィンドウに対して、
  ・データの操作ができて、
  ・画面のリドロー、
  ・フォーカスを当て、
  ・カーソル移動ができないといけない。
 そうしないと、描画ソフトのように、いくつもパレット(色とか、筆の太さとかを指定する、メインダイアログ以外のダイアログ)があるとき、パレットが入力されたら(フォーカスはパレットにある)それにもとずいて、描画内容を変えたり、メインウィンドウにフォーカスをもっていったりすることができない。

・複数のウィンドウが立ち上がっている状態で、あるウィンドウで終了指示が出されたら、すべてのウィンドウを閉じ、メモリを開放するという可能性もある(複数文書を立ち上げていて、プログラム終了された場合)

 もし、仮に、こういう問題が起こったとしたら、どうするかだが、これは、JAVAなら、簡単に解決できる。ハッシュマップに全部のウィンドウの情報を入れておいて(ウィンドウに名前をつけて管理しておく)必要なときに、ウィンドウの名前をもとに、ウィンドウ情報をGetして、値を設定、リドローする。プログラムを抜ければ、ハッシュマップが、自動的にメモリを解放してくれる。




 ではBREWは?
 おなじように、ハッシュマップ相当のものを作って、そいつにウィンドウ名と、ウィンドウ情報を入れればいい。で、どの画面にいくときも、そのハッシュマップ相当を持っていけば、すべての画面を、ハッシュマップから取り出し、操作できる。
 さらに、そのハッシュマップに入っているデータは、そのハッシュマップをReleaseすると、解放されるようにしておけば、どこの画面で終了したとしても、そのハッシュマップさえ解放すれば、すべての画面データを確実に解放できる。

 これを実現するのが、カオル姫方式で、IKHMapというマップをつくって、このマップに、キーワードと値をいれておく。値は、画面でも、テキストでもOK!で、アプリが終了するとき、いっぺんに返す。もちろん、必要がなくなったら、その時点で、IKHMAP_Release(ハッシュマップ、"キーワード")で、解放できる。

 実際には、はじめに、文字列だけのIKHMapを紹介して、その後、そういう画面とかでもできるように拡張するんだけど、最終的には、カオル姫方式で、こんなことができる。

 そんなカオル姫方式をもうじき、紹介します(その前に、もうひとつのメリットを書きます)


この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« CEATECに行って、眞鍋さんの... | トップ | ソフトウエアの改造には、も... »
最新の画像もっと見る

ケータイ」カテゴリの最新記事