小山博史のJavaを楽しむ(6)
JavaFXでJava RIA開発はどれくらい変わるの?
ガリレオ
小山博史
2007/6/13
|
教育界、技術者コミュニティでJava言語の教育と啓蒙に長年携わってきた筆者が、独自の視点からJavaの面白さを掘り下げていく。(編集部) |
| 今回の主な内容 ・ JavaFX Scriptの使いどころとは? ・ ダウンロードして、デモを試す ・ 簡単なJavaFXアプリを作ってみよう! ・ スクリプトの起動方法を考える ・ アニメーションプログラムを作ってみよう ・ RSSフィード表示アプリを作ってみよう ・ JavaFX Scriptを楽しむ |
2007年のJavaOneで発表されてから、がぜん注目を浴びているJavaFX Script。Swingライブラリを使ったプログラミングが簡単にできるようになるということで、これを使えばJavaデスクトップアプリケーションもすぐに開発できるようになりそうです。
Sunは携帯端末向けのGUIアプリケーションもターゲットとしているようで、JavaFX Mobileというシステムも提供していくとアナウンスしています。こちらは、従来よりもパワーがある携帯端末で、Java SEが動作するようなものを想定しているようです。
PCのデスクトップだけでなく、この先進的な携帯端末でも動くGUIアプリケーションを簡単に作成できるということが、JavaFX Scriptの売りとなっているようです。昨年から続いているEoDの流れにも沿っているのでしょう。ということで、早速JavaFX Scriptを使ってみました。
![]() |
| 図1 JavaFX Script Studiomoto Demoの画面(画面をクリックすると拡大します) |
■ JavaFX Scriptの使いどころとは?
JavaFX Scriptは、SunのJavaFXのサイトで紹介されています。RIA(Rich Internet Application)を簡単に実装できることが売りですが、Javaプログラマにとっては、既存のスクリプト言語との関係が気になるところです。Swingライブラリを使ったプログラミングの方が、Javaの文法で行える分、気が楽だというのが正直なところなので、こういったスクリプト言語の存在に価値を見いだすとしたらどこか、というのが最初に気になります。
■ Webブラウザの出現でUIデザインの仕方は変わった
一昔前のコンピュータ用アプリケーションの開発においては、ユーザーインターフェイスデザインというのは、開発者が片手間にやっていたり、コンピュータのユーザーインターフェイスに詳しいエンドユーザーが指示をしていたり、というのが普通の世界でした。
しかし、Webブラウザの出現によって、状況は変わってきています。いまや、Webサービスの開発においては、デザインチームが画面デザインをし、Web開発チームがそれをXHTML+CSSやAjaxで実装し、サーバサイドは開発チームがプログラミングをするといった体制で開発が増えてきています。賛否両論はあるようですが、GUIアプリケーションのモデルとして有名なMVCモデルをWebアプリケーション開発に適用していることが多いはずですし、多くのフレームワークは、基本的にこのモデルを採用しています。
■ RIA開発ではより柔軟なGUIコンポーネントが必要
このように、RIAの開発が要求されるようになってきていますが、これまでのようにWebブラウザに依存した技術だけでそれを実現するのは難しくなってきています。これからは、より柔軟に、より高度なGUIコンポーネントを組み合わせることができて、しかもインターネットに対応したアプリケーションを開発できる技術が必要なのです。
■ JavaFX Scriptはデザイン側やクライアント開発側で使われる?
こうして見ると、JavaFX Scriptを使うのは、実はサーバサイドで開発をしているJavaプログラマよりは、現在、XHTML+CSSやAjax回りを使っているWeb開発チームが一番関係してきそうです。このチームのメンバが、Webアプリケーション開発時にJavaScriptやFlashを使っていたのと同じように、デスクトップでも携帯端末でも同じように動作するRIAを開発するに当たって、JavaFX Scriptを使うことになると考えられます。
ですから、JavaFX Scriptを評価するに当たっては、こういった開発体制で利用できそうなのか、JavaScriptやFlashを使うのと同じくらい簡単に使えるのか、といった項目が重要ではないでしょうか。こんなことを考えながら、いくつかの簡単なサンプルコードを作ってみました。
■ ダウンロードして、デモを試す
JavaFX Scriptのオープンソース実装であるOpenJFXのサイトでは、活発に開発がされていて、バージョンアップが頻繁に行われています。アーカイブはzip形式とtar.gz形式が用意されていますので、好きな方をダウンロードしてください。ここでは、記事執筆時にダウンロードしたOpenJFX-200705302107.zipを使って動作確認をしていますので、あらかじめご了承ください。
OpenJFXのサイトでは、ライセンスは将来的にはGPLとなると書いてありますが、記事執筆時にダウンロードしたものには、「Technology Evaluation License」が同梱されていました。
■ Java Web Startを使ったデモ
ところで、このサイトには「Demos」と記載してあるところに、JNLPを使ったJava Web Startで起動するデモも用意されています。ちょっと様子を見てみたいというだけでしたら、このデモをダウンロードして動作させてみるといいでしょう。こういうのを使うと、Java Web Startの良さを実感できるはずです。
![]() |
| 図2 JavaFX Script Tesla Demoの画面(画面をクリックすると拡大します) |
編集部注:Java Web Startについての詳細を知りたい読者は、サンの夢を語れるのか?「Java Web Start」をご参照願います。
■ デスクトップ上でも、デモを動かす
ともあれ、手元でも動作をさせてみましょう。ファイルをダウンロードしたら展開します。ここでは、Windows XPを使って確認をしました。展開した結果できたディレクトリは、C:\OpenJFXという名前に置き換えています。なお、後で作成するサンプルコード用にC:\OpenJFX\sampleも作成しておきました。
ダウンロードしたファイルに同梱されたjavafxpad.batは簡単なJavaFX Scriptプログラムの開発に使える便利なツールです。前述のJava Web Startのデモにもあります。早速使ってみました。
![]() |
| 図3 JavaFxPadの実行例(画面をクリックすると拡大します) |
| 1/3 |
| INDEX | ||
| 第6回 JavaFXでJava RIA開発はどれくらい変わるの? | ||
| Page1 JavaFX Scriptの使いどころとは? ダウンロードして、デモを試す |
||
| Page2 簡単なJavaFXアプリを作ってみよう! スクリプトの起動方法を考える |
||
| Page3 アニメーションプログラムを作ってみよう RSSフィード表示アプリを作ってみよう JavaFX Scriptを楽しむ |
||
小山博史のJavaを楽しむ バックナンバー
- 第1回 JavaとJavaScriptの親しい関係
- 第2回 いろいろなJavaを楽しむ
- 第3回 待望のJava SE 6 でパーシステンス
- 第4回 (Java+Derby)* Ruby on Rails プログラミング
- 第5回 【新人研修向け特別企画】JavaでPHPを使ってみた
- 第6回 JavaFXでJava RIA開発はどれくらい変わるの?
- 第7回 そろそろブログ+RSSアプリでも作ってみませんか?
- 第8回 デスクトップをJava製ウィジェットでにぎやかに
- 第9回 Google Android用携帯アプリ作成のための基礎知識
- 第10回 【新人なるプログラマーへ】ソースコードを読みましょう
- 第11回 Javaはクラウドのプラットフォームになり得るのか
- 第12回 「Javaは遅い」から「Javaは楽しい」に至る歴史
- 第13回 Subversionならできる! NetBook最強バックアップ術
- 第14回 UNIX/Linuxも楽しむJava開発者になるための学習法
- 第15回 年末でJetty(絶対)にできるAndroid携帯サーバ活用
| Java Solutionコラム一覧 |
TechTargetジャパン
- Scalaのパッケージ、アクセス修飾子、オブジェクト継承 (2012/5/22)
インポート、パッケージオブジェクト、抽象クラス/抽象メソッド、オーバーライド、final、シールドクラスなども - 基幹系システムでCloud SQLは使えるか試してみた (2012/5/17)
サンプルとしてMRPシステムを作成して動かし、「再帰呼び出し」などのパフォーマンスを測定して検証してみます - アジャイル管理ツール9選+Pivotal Tracker入門 (2012/5/14)
群雄割拠のアジャイルプロジェクト管理ツールを9つ紹介し、特に注目を集めているPivotal Trackerの基本的な使い方を解説します - サーバサイドJSやJavaでWebアプリが作れるXPages (2012/5/11)
Notes/Dominoの資産をサーバサイドJavaScriptやJavaで操作し、HTMLやJavaScript、CSSをUIにできる技術を紹介
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -



