JavaFX

出典: フリー百科事典『ウィキペディア(Wikipedia)』
Jump to navigation Jump to search
JavaFX
開発元 オラクル
最新版 8 / 2014年3月18日(4年前) (2014-03-18
プラットフォーム Javaプラットフォーム
対応言語 Java
種別 リッチ・インターネット・アプリケーション
ライセンス EULA, 一部 GPL+リンク例外[1]
公式サイト www.oracle.com/technetwork/jp/java/javafx/
テンプレートを表示
Javaのエディション
Duke (Java mascot) waving.svg
Javaカード
Micro Edition (ME)
Standard Edition (SE)
Enterprise Edition (EE)
JavaFX

JavaFX(ジャバエフエックス)とはJava仮想マシン上で動作するリッチインターネットアプリケーション (RIA) のGUIライブラリである。Java SE 7 Update 2以降に標準搭載されている。Swingとは異なり、FXMLと呼ばれる XMLCSSを併用してデザインを記述する。

概要[編集]

JavaFXは2007年5月8日のJavaOneでお披露目された。この時点でRIAプラットホームとしてはすでにAdobe Flexが普及しており、Microsoft Silverlightのリリースが2007年9月6日に迫っていた。JavaFXは3番目のRIAプラットホームである。

JavaFXは従来のAWTSwingによるJavaのGUI開発をより簡単に、その表現力をよりリッチにした新しいプラットホームである。JavaFXではアニメーションするGUIを簡単に作成することができ、Java AppletおよびJava Web Startを用いてブラウザを通じて簡単に配布・実行できるRIAプラットフォームとなっている。JavaFX自体はブラウザを要さず、単体のJavaアプリケーションとして実行することが可能である。

フィーチャーフォンなどの組込み向けのJava ME上で動作する JavaFX mobile 1 が2009年2月12日にリリースされたが、JavaFX mobile は JavaFX 2 のリリースとともに廃止。新たにスマートフォン向けのバージョンが計画されている。

JavaFX 1[編集]

JavaFX 1 は2008年12月4日リリース。

JavaFX 1 では、静的型付けされた宣言的言語であるJavaFXスクリプトと呼ばれるプログラム言語を用いて開発する仕組みだった。JavaFXスクリプトはJavaバイトコードにコンパイルされるため、プログラマーはかわりにJavaコードを使うこともできた。

JavaFX 2[編集]

JavaFX 2.0 は2011年10月10日リリース。

JavaFx 2.0以降、JavaFXを用いるアプリケーションは、「普通の」Java APIを利用して、「普通の」Javaコードで書くことになった。JavaFX ScriptはOracleにより廃止されたが、開発はVisageプロジェクトで続いている[2]。JavaFX 2.xはSolaris携帯電話をサポートしていないが、OracleはJavaFXをJava SE Embedded 8に統合することを計画しており、ARMプロセッサ用のJavaFXは開発者プレビュー段階である[3]

2.0 は Windows のみの対応だったが、2.1 から macOS に、2.2 から Linux に対応。

デスクトップ用では、JavaFXは Windows Vista, Windows 7, Windows 8, Windows 10, macOS および Linux をサポートしている[4]。JavaFX 1.2以降、OracleはOpenSolaris用のベータ版をリリースしている[5]。携帯電話用には、JavaFX Mobile 1.x が複数の携帯端末用OSSymbian OS, Windows Mobile, 及び登録商標を持つ リアルタイムオペレーティングシステムなど)上で走る。

iOS及びAndroid向けの有償移植版が、「Gluon」という名前で作られた[6]。これは単一のソースコードベースからデスクトップ、iOS、Androidデバイス向けのアプリケーションを作ることを可能にするものである。

JavaFX 8[編集]

JavaFXは、Java 8(2014年3月18日リリース)からJRE/JDKの一部となり、バージョン番号も同じ番号にそろえ てJavaFX 8 となった。


技術的ハイライト[編集]

JavaFX 1.1 は "共通プロファイル"という概念に基づいている。この共通プロファイルはJavaFXがサポートする全てのデバイスで共通に使われることを意図している。このアプローチにより、開発者はデスクトップ向けと携帯端末向けの両方をターゲットとしたアプリケーションを作るにあたって、共通のプログラミング・モデルを使うことができ、従ってデスクトップ版とモバイル版の間で多くのコード、グラフィック資産、コンテンツなどを共通利用できる。特定の種別のデバイス上で走らすアプリケーション向けの調整を行うニーズに対処するため、JavaFX 1.1にはデスクトップ用あるいはモバイル用に特化したAPIが含まれている。例えば、JavaFXデスクトップ・プロファイルにはSwing や先端的な視覚効果が含まれている。

エンド・ユーザーの視点からみると、"Drag-to-Install"(ドラッグでインストール)機能によりJavaFXウィジェット(ウェブサイト内にあるアプリケーションであって、ブラウザ・ウィンドウ内で見えるもの)をドラッグして、それをデスクトップ上にドロップできる。すると、そのウェブブラウザを閉じても、そのアプリケーションは動作中の状態やコンテキストを失わない。またアプリケーションはユーザのデスクトップ上に自動的に作られたショートカットをクリックすることで再度起動することもできる。Sunは"Drag-to-Install"機能を、開発者が「ブラウザから解放される」ことを可能にする、新しい頒布モデルの幕開けだと宣伝している。

JavaFX 1.x はAdobe Photoshop および Illustrator用のプラグインのセットを含んでおり、これにより先進的なグラフィックスを直接JavaFXアプリケーションに統合できる。それらのプラグインはJavaFXスクリプトを生成して、グラフィックスのレイヤーや構造を保持する。開発者は取り込んだ静的なグラフィックスに対してアニメーションや視覚効果を容易に追加できる。JavaFX形式への変換後、グラフィックスの取り込みとプレビューを可能にするSVGグラフィックスの変換ツールもあった(Media Factoryとも呼ばれる)


参照[編集]

  1. ^ OpenJFX Project”. オラクル. 2011年12月7日閲覧。
  2. ^ Google Code Archive - Long-term storage for Google Code Project Hosting”. Code.google.com. 2016年8月1日閲覧。
  3. ^ Archived copy”. 2012年12月1日時点のオリジナルよりアーカイブ。2012年11月24日閲覧。
  4. ^ JavaFX Supported Configurations”. Oracle.com (2014年4月8日). 2016年8月1日閲覧。
  5. ^ Oracle Technology Network for Java Developers | Oracle Technology Network | Oracle”. Java.sun.com. 2016年8月1日閲覧。
  6. ^ Rapid Enterprise Mobile Apps: Build, Connect, Manage with Gluon” (2017年12月16日). 2017年12月16日閲覧。

外部リンク[編集]