1. ホーム
  2. java

[解決済み] Javaデスクトップアプリケーション。SWTとSwingの比較 [終了しました]

2022-04-26 11:19:04

質問

私は日頃はウェブ開発者ですが、初めて本格的なデスクトップアプリケーションを作ろうと思っています。アイデアは、APIが利用できないWebアプリケーションで、非常に反復的なタスクを自動化するツールを構築することです。

Javaを使いたいのは分かっているんです。以前、ウェブで使用したことがあり、構文もよく知っていますし、アプリケーションはできるだけ簡単にクロスプラットフォームで使用したいのです。

SWTとSwingのどちらを使うか迷っているところです。私の主なユーザーはWindowsを使用しているので、できるだけネイティブに見せたいのです。LinuxやMacも使えるはずですが、ここでは見た目はそれほど重要ではありません。

では、SwingとSWT、それぞれのUIフレームワークにはどのような賛否両論があるのでしょうか。

ありがとうございます。

PS:私はWindowsでEclipseを使って開発しています。しかし、Netbeansで遊んでみようと思っていました。

どのように解決するのですか?

プロスウィング

  • java ライブラリの一部であり ネイティブライブラリの追加
  • すべてのプラットフォームで同じように動作します。
  • NetbeansとEclipseに統合されたGUIエディタ
  • Sun/Oracleによる優れたオンラインチュートリアル
  • javaの公式拡張機能(java OpenGLなど)でサポートされています。

Cons Swingです。

  • ネイティブなルック&フィールの動作は 実際のネイティブとは異なる システムで使用されます。
  • 重いコンポーネント(ネイティブ/AWT)はSwingコンポーネントを隠しますが、重いコンポーネントを使用することはまれなので、ほとんどの場合、問題にはなりません。

SWTの長所。

  • 可能な限りネイティブな要素を使用するため、常にネイティブな動作が可能です。
  • eclipse、GUIエディタVEPに対応(VEPはSwing、AWTもサポート)。
  • 豊富なオンラインサンプル
  • awt/swtブリッジが統合されており、awtとswingのコンポーネントを使用することができます。

短所 SWT。

  • ネイティブライブラリが必要 対応システム
  • は、ネイティブのため、すべてのシステムですべての動作をサポートするとは限りません。 使用するリソース(ヒントオプション)
  • ネイティブ コンポーネントはしばしば親と一緒に破棄されますが、フォントなどの他のリソースは手動でリリースするか、コンポーネントに dispose リスナーとして登録して自動的にリリースする必要があります。