32

Hibernate と Spring を統合して、Swing で多くのデスクトップ アプリケーションを開発してきました。アプリケーションのライフサイクル、ロギング、アラート、承認、フォームとそれらの検証など、多くのことが繰り返され、迅速かつ便利な方法で実行する必要があることがわかりました。フレームワークを探し始めました。数年前から死んでいる Swing Application Framework に出会いました。Spring RCP は本当に私の期待に応えてくれました。特に、Java Bean モデルに基づいてフォームを作成するのが好きでしたが、それも死んでいることに気付きました。Netbeans RCP は私には向いていません。Eclipse を使用しており、デスクトップ開発に別の IDE を使用したくありません。私は Eclipse RCP にそれほど興奮していません。あまりにも Eclipse 指向であると感じました。どのツールとも結合度の低いものが好まれます。

Java でのデスクトップ ベースのビジネス アプリケーションの開発に対するサポートが非常に弱いことに驚いています。Java は Web 環境でのみ使用されていたようです。そのようなアプリを作成するための優先言語は何ですか? また、Java を使い続けたい場合、Spring RCP に似たものを見つける機会はありますか (これまでは見つけられませんでした)。

4

6 に答える 6

11

グリフォンを試してみてください。これはgroovy 言語に基づいており、 grails フレームワークに触発されてい ます。JVM で動作し、言語は Java プログラマーにとって非常に使いやすいです。

サイトより引用

Griffon は、JVM でデスクトップ アプリケーションを開発するためのアプリケーション フレームワークであり、Groovy が主要な言語として選択されています。Grails に触発された Griffon は、Convention over Configuration パラダイムに従い、直感的な MVC アーキテクチャとコマンド ライン インターフェイスを組み合わせています。

.... アーキテクチャは非常に拡張可能です。

Griffon フレームワークは、プラグインを介して拡張可能です。たくさんの選択肢があります。たとえば、Swingx、Jide、Macwidgets などのサードパーティの Swing コンポーネント用のプラグインがあります。DataSource、GSQL、Hibernate などの永続性関連のプラグイン。3D グラフィックスとアニメーションのサポートは、JOGL、LWJGL、および Processing を介して可能です。などなど!

于 2013-01-19T02:16:08.760 に答える
10

少し前に同様の質問をしました。興味がある場合は、 Swing デスクトップ開発を参照してください。

私の結論は、デスクトップアプリケーションに対して実行できるフレームワークはまったくないということです.Webアプリケーションに対して膨大な数の優れたWEBフレームワークが実行できることです。ばかげているように思えますが、私の経験では、優れた Web フレームワークとデスクトップ フレームワークの欠如により、Web アプリケーションの開発がはるかに簡単になりました。

私は 2 つのプロジェクトで Spring-RCP を使用しています。素晴らしかったのですが、Spring 2.5 に固執しているため、最近ではほとんど使用できません。また、私には少し遅く感じられ、64 ビット マシンでは実際にメモリを消費します。これはおそらく Spring-Swing の問題です: https://jira.springsource.org/browse/SPR-9628

Project Valkyrieを待っていましたが、すでに死んでいるようです

あなたの要件を完全にカバーするものは見つからないと思います。http://swingx.java.net/は、JXDatePicker などのいくつかの GUI ウィジェットを提供する可能性があります。JGoodies Binding と JGoodies Form もお勧めします。どちらも素晴らしいです。クライアント サーバー アプリケーションを使用する場合は、Spring-Security で Spring-Remoting (HTTP Invoker など) を使用することを強くお勧めします。本当に物事が簡単になります。

私は Swing を使ったデスクトップ アプリの開発を楽しんでいますが、残念ながら、実際には「さらに努力する」必要があります。クライアント サーバー通信、セキュリティ、さらには検証は、最近 (最新の Web フレームワークと比較して) 複雑すぎると思われる多くの事柄のほんの一例にすぎません。また、java-webstart を使用してアプリケーションを自動的にビルド、署名、デプロイするのは、本来あるべきほど簡単ではないことに気付くかもしれません。

Spring-RCP は、私がこれまでに見つけた「完全な」デスクトップ フレームワークに最も近いものであり、何年もの間死んでいます。

幸運を!

于 2013-01-25T17:59:04.903 に答える
9

ほとんどの場合、アプリケーションのサイズに依存します。

小規模および中規模のアプリの場合、異なる言語を使用しない JavaFX 2 を使用するのが理にかなっています。いくつかの基本的なチュートリアルから始めることができます。

エンタープライズ レベルのアプリケーションについて述べたように、Eclipse RCPNetbeans RCPは適切な選択です。

Netbeans RCP は開発がはるかに簡単です。IDE の設定だけを理由に、Netbeans RCP を却下しないでください。それについての良い出発点となる無料の本があります。

Eclipseの大幅な改善になるはずのe4のオプションもありますが、まだ使用したとは言えません

一見の価値がある関連リソースは次のとおりです。

http://netbeans.dzone.com/why-from-eclipse-rcp-to-netbeans-platform

Netbeans RCP と Eclipse RCP の比較

于 2013-01-19T01:58:04.307 に答える
5

JGoodiesをチェックしてください。ルックアンドフィールがはるかに優れているだけでなく、Swingアプリを設計するためのフレームワークも提供します。

デスクトップアプリケーションに関する大きな問題は、それが実際に設計しようとしているものに依存することです。ウェブページ->リクエスト->ウェブページであるウェブアプリとは異なり、デスクトップアプリケーションはほとんど何でもできます。ビジネスアプリであっても、標準的なサイクルはありません。これは、通常のJavaEEまたはPHPWebアプリケーションと言うよりもAJAXに非常によく似ています。また、特定のコンポーネントの呼び出しと更新以外のフレームワークを実際に提供しているAJAXライブラリの数。

メニュー、ボタン、パネルの更新、オンザフライでのレンダリング、グラフの変更、データの更新などを行うことができます。

フォームを探しているだけなら、JGoodiesがおそらく最善の策です。

于 2013-01-20T09:08:31.370 に答える
1

そのようなフレームワークについては知りませんが、NetbeansSwing コンポーネント用のドラッグ アンド ドロップ ウィザードを提供します。Eclipseにも同様のプラグインがありますが、これは Netbeans プラグインに基づいています。

于 2013-01-19T01:44:24.193 に答える
1

アプリケーションのライフサイクル、ロギング、アラート、承認、フォームとそれらの検証など、多くのことが繰り返され、迅速かつ便利な方法で実行する必要があることがわかりました。

これらを、すべてのプロジェクトで共有して使用できる個人用の「コア」ライブラリに抽出することをお勧めします。あなたが話していることはすでに実装しているので、まったく新しいフレームワークを研究するよりも、それらを一般化する方が簡単なはずです。おそらく、プライベートMavenプロジェクトですか?

開発の焦点は Web とモバイルに移行しているため、デスクトップのフレームワーク ベンダーからの多大な努力は期待できません。

于 2014-11-25T20:00:53.500 に答える