2007年 5月 14日 月曜日
[JavaOne 2007 Report (5)] 5/9(水) Day-2 その2
SunSPOT HoL で気合入れすぎた反動か、病状悪化--;
あえなくホテルで3時間ほどダウン。。
その後会場に戻り、1つセッションを聴いた後で荻野さん、きしださん
に会い、Moscone Center の隣にある Sony Metreon へ夕食に
(そういえば朝から何も食べてなかった。。)
Sony Metreon では岡崎さんとも合流。この日はマルゲリータピザに
舌鼓を打ちました(前日のバーガーキング2連チャンといいジャンク
フードばっかだな。。)。といっても、体調最悪のため3切れほどしか
食べられず、岡崎さんときしださんにヘルプを頼む始末だったのですが--;
ということで、以下 Hands-On の後に聴いたセッションの感想など。
o TS-1786: 「Writing Games With Project Darkstar」
Sun Labs で開発が進められている オンラインゲーム用のゲームサーバ
(SGS: Sun Game Server) です。Project Darkstar については
1年ほど前に発表されていますね。このセッションでは SGS の目的や
アーキテクチャに関する詳細な説明があり、このSGSを使ったゲームの例として
が紹介されていました。
# Bunny Hunter Online (Mind Control Software, Inc.)
実際にセッション中にこのゲームのデモが行われたのですが
BGMとい見た目といい80年代のファミコンゲームを思い出させる出来で
かなり腰砕けでいい感じでした--;
SITM(Search Inside The Music) といい この Darkstar といい、Sun Labs奥が深いです。。
-> Project Darkstart Community
o BOF-0396: 「Internet Application Use Cases of Next-Generation Java Card Technology」
この BOF は予想以上のヒットでした。
ポイントを一言でいうと、
「次世代の JavaCard はネットワーク Ready になりますよ」
ということ。
- HTTPプロトコルがサポートされます
- JavaCard VM 上に組み込みWebサーバが乗っかります(Java Servlet 2.4)
オンライン取引をよりセキュアにするための試みのようです。
# たとえば JavaCard クレジットカードによるオンライン決済など
BOFでは、以下のような例がユースケースとして挙げられていました:
- Secure online purchase
- Secure banking transactions
- Secure online update of applications (Pay TV)
- DRM applications (Multimedia decryption)
o BOF-3420: 「Designing Successful UIs」
JavaSE の User Experience チームの方々が良いUIをデザインする
ためのTipsを語ってくれました。
# UIスケッチの作成、お客との対話、UIコンポーネントのレイアウト etc.
# というような内容です。
# 個人的には少し期待と違う内容だったのですが。。
興味のある方はこちらにBOFスライドがアップされているようです
ので参照してみてください。
Posted at 10:43午後 5 14, 2007 by Shuichi Machida in JavaOne | 投稿されたコメント[0]
[JavaOne 2007 Report (4)] 5/9(水) Day-2 その1 - SunSPOT HoL
朝起きると体調が最悪--;
とはいえこの日は朝イチで SunSPOT の Hands-On Labs 。
しかもこの Hands-On、昨年の JavaOne でも大人気で満席になり、急遽追加で行われた
程の人気セッションらしいので、事前予約をしていない私は当日の空き待ちを狙って
早めに並ばなくては入れないのです。
ということで、フラフラになりながらも開始10分前に到着。何とか最後から2人目
で潜り込むことに成功!
# 会場はこのような感じです。100台ぐらいマシンが並んでいます。
120分間、与えられた課題を各自で進めていきます。スピーカーはいますが、基本的な説明を
した後は独習という形で、分からない事があったら会場にいるスタッフ(Proctor)の人に質問します。
さて今回の Hands-On は簡単に言うと 「SunSPOT 2台と Trackbot 1台を使って遊んでみよう」
というものです。SunSPOT はUSでは既に発売開始されていますが、日本ではまだ入手不可能なため
実物を見るのも触ってみるのも今回が初めてです。
# 今回はこれを使って遊びました(右側の大きいのが Trackbot、2つあるのがSunSPOTです)
なお、SunSPOT の開発は基本的に NetBeans IDE 上で行います。 プログラムのコーディング、ビルド、
デバッグ、そして SunSPOT へのプログラムの配備(インストール)といった一連の操作を NetBeans
上で実行できます。また、SunSPOT 間は無線通信ですが、PCからSunSPOTへのプログラムの転送
などの際には PC と SunSPOT をUSB接続します。
# 開発作業の様子(NetBeans とても便利です)
大きく5つの課題があったのですが、以下ではそれぞれ写真を交えて簡単に感想など。
1. SunSPOT 1台を使って、読み取った加速度計(Accelerometer)のx,y,z値に応じて3色LEDを光らせよう
プログラムはものすごく簡単です。クラスは1つ(CLDCのMIDlet)で、ほんの数十行。必要なソースコードはすべて
提供されているので、内容を確認してビルドし、出来上がったプログラムを SunSPOT に流し込みます。
おぉ、動いた。ちょっと感動。。
# 上下に振ったり、左右に動かしたりすると SunSPOT 上部のLEDの色が変わります
# 写真だと単なる白にしか見えません--;
2. SunSPOT 2台を使って、1台の SunSPOT が読み取った加速度計の値を(無線通信で)もう1台に渡して、3色LEDを光らせよう
課題1の応用です。だんだんと SunSPOT らしくなってきました。ソースコードは既にあるので NetBeans でビルドして
SunSPOT に流し込みます。今回もソースコードはいたって単純。
# ちなみに、それぞれの SunSPOT は 802.15.4 MACアドレスにより識別されます。
おおっ、動いた。リモートコントロールできて再び感動。。
# LEDの右端が緑になってます
3. SunSPOT と Javaのデスクトップアプリケーションを連携してみよう
今回は 2台の SunSPOT と、SunSPOT のアバターを表示する3Dデスクトップアプリケーションを使用します。
要するに、手に持った SunSPOT を動かした時のジェスチャーを3D上で表示し、連動させようというわけです。
今回も加速度計を使用します。
。。。
無事成功。
SunSPOT を回転させるとデスクトップ上の "SunSPOT" も回転します。
# 3Dデスクトップの図(黄色の矢印は下方向を指しています)
4. SunSPOT を Trackbot に装着して、動かしてみよう
Trackbot の登場です。
# ちなみに去年の Hands-On では Trackbot はなく、この前の3Dデスクトップまでだったそうです。
# こんな感じで、Trackbot のI/Oポートに SunSPOT を接続します。
例によって SunSPOT に載せるプログラムは提供されています。
# プログラム中では Trackbot に対して次のようなコマンドを発行します
...
forward(1000);
right(90);
forward(1000);
right(90);
forward(1000);
right(90);
forward(1000);
right(90);
...
早速手順に従って作業します。
そして Trackbot のスイッチを入れて床に置いてみると。。
Trackbot がぐるぐる回り出しました!!
5. SunSPOT を2台使って、Trackbot をリモートコントロールしてみよう
これは課題4の応用です。課題2と同様、SunSPOT の通信機能を利用して、Trackbot に取り付けた
1台のSunSPOT に対してもう1台のSunSPOT からメッセージを送り、制御しようというものです。
。。。
が、
その前までの課題にじっくり取り組みすぎた(プログラムをまともに読みすぎた)せいか
時間が足りなくなってしまいました--; 残念。
とりあえず、終わらせた人の所に行って見せてもらいました。。
ちょっとしたプログラミングでコレだけのことができるなんて、SunSPOT の可能性を感じさせますね。
。。。
作業中は体調のことも忘れて熱中したせいか、あっという間の2時間でした。
早く日本でも SunSPOT が入手できるようになるといいです!
ちょっと高価なオモチャですが--;(現在US では $550)
あと、この SunSPOT の開発でも NetBeans を普通に使いましたが、今回の JavaOne では
セッションのいたるところで NetBeans が使われているというのが凄く印象に残ってます
NetBeans さえマスターしておけば、JavaSE, JavaME, JavaEEはもちろん スクリプトやSOA、
SunSPOTのようなニッチなものまでありとあらゆる開発が統一した環境でできるようになります。
まだ使ったことがない!という方は、是非 NetBeans を試してみてください。
絶対に損はしないと思います。
Day-2 その2に続く
Posted at 12:38午前 5 14, 2007 by Shuichi Machida in NetBeans | 投稿されたコメント[0]