デスクトップ アプリを作成する必要があります。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 はおそらく長い間使用されますが、現在はメンテナンス モードになっています。大規模なアプリケーション (IntelIJ や Netbeans など) を JavaFX に完全に移植するには、多大な労力が必要です。そして、それらの大規模なアプリケーションの場合、そのような大規模なポートはおそらく現時点では価値がありません.
2021 年 9 月 15 日のステータス更新:
どちらも良いオプションです:
どちらももう一方に取って代わる可能性はありません。ターゲットの用途がわずかに異なり、今後何年にもわたって共存する可能性があります。