デスクトップアプリを作成する必要があります。Swingを使い始めてからしばらく経ちますので、どちらのテクノロジーでも学習曲線があります。
JavaFX 2を使用してアプリを実行することに利点はありますか?
4年前、私は同じ質問をしていて、当時のSwing用に多くのサードパーティライブラリがまだ作成されているので、Swingを使用するのが最善だという結論に達しました。また、Sunからの1.0リリースは、通常、端が少し荒れていました(私はJSF 1.0とJPA 1.0で自分を焼きました:-)。
今日、多くのライブラリにはJavaFXに対応するものがあるか、JavaFXライブラリとして利用できます。とはいえ、まだSwing専用のライブラリもたくさんあります。また、JavaFX 2.0でいくつかの小さなことを行いましたが、それは本当に完了しているようです。私はショートッパーにぶつかったことはありません。
Swing/JavaFX以外に使用する外部UIライブラリの数(およびどれ)を確認する必要があります。答えが多くないか、たくさんある場合は、Java FXの代替手段(または自分で行うのは簡単))は間違いなくJavaFXを選びます。また、JavaFXでSwingコンポーネントを使用することもできます。
前述のように、JavaFXはSwingを将来廃止する予定であり、OracleはJavaFXにコミットしているようです(これもオープンソースになる予定です)。したがって、JavaFXを強くお勧めします。
2014年4月13日のステータス更新:
2年前に確信が持てなかった場合、JavaFXは間違いなく進むべき道のように見えます。 Swingはおそらく長い間使用されますが、現在はメンテナンスモードになっています。大規模なアプリケーション(IntellIJやNetbeansなど)を完全にJavaFXに移植するには、多大な労力が必要です。そして、それらの大規模なアプリケーションにとって、そのような大規模なポートはおそらく現時点では価値がありません。
どちらも良いオプションです:
どちらも他方に取って代わる可能性はありません。それらはわずかに異なるターゲット用途を持ち、おそらく今後何年にもわたって共存するでしょう。