@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

リッチクライアント技術は使える?使えない?

投稿者投稿内容
なべぞう
ベテラン
会議室デビュー日: 2003/07/07
投稿数: 98
お住まい・勤務地: 岡山県
投稿日時: 2003-07-24 11:07
こんにちは、なべぞうです。
いまJavaのリッチクライアント技術を調査しています。
Javaのリッチクライアント技術にはアプレット、AWT、Swing、SWTが
ありますが、VB/VCと比較すると今ひとつ、今二つという感じです。
@ITでも"SWTは有用"という記事を見かけますが、みんなホンキでそ
う思っています?
Shane
大ベテラン
会議室デビュー日: 2003/06/06
投稿数: 132
お住まい・勤務地: Vancouver, BC
投稿日時: 2003-07-24 15:38
そもそもWindowsネイティブ言語のVB/VCと比べるのが間違っているのではないでしょうか。

あえてコメントすれば Applet、AWT、Swing、SWT は Unix でも動きますが
VB/VC はWindowsでしか動きませんね。
MUSE
常連さん
会議室デビュー日: 2003/04/06
投稿数: 42
投稿日時: 2003-07-24 18:55
Windowsのユーザであれば、VB/VCアプリと比べることはあながち間違いとも言い切れないんじゃないでしょうかね〜。
Unixのユーザであれば、明らかに間違いですけど。
ユーザの立場からしてみれば、やっぱりユーザーインターフェースのレスポンス命!みたいなところがありますし。
そういえば、Eclipsで使用しているパッケージなんかはOSの機能を使っているから早くて好評みたいですね。お客さんからしてみれば、そっちの方がうれしいかも。例えピュアでなくとも。
未記入
大ベテラン
会議室デビュー日: 2003/06/28
投稿数: 219
投稿日時: 2003-07-24 19:22
Java Appletの欠点といえば、表示されるまでに時間がかかること、ボタンやフォームが
いかにも”アプレットアプレット”しているところではないでしょうか?
VB/VCで組むのもありですが、不特定の環境で閲覧される可能性がある場合は使えない
ですね。そこで、変わった選択肢として(どこかのスレにも書きましたが)Macromedia
Flashなども面白いです。
サーバーサイドとの通信もOKですし、動きも含めたグラフィカルなインターフェースを
構築できます。ただし、プログラミングという点から考えた場合、グラフィックソフトと
しての一面を持っているため、かなり考え方を変えないといけないですが。
Hush
会議室デビュー日: 2002/04/23
投稿数: 13
投稿日時: 2003-07-24 20:24
私はJavaのリッチクライアントは、Applet、Swing、SWTそのものというより、Java Web Startに注目しています。
そもそもSwingやSWTをVB/VCと同列に比較すると、リッチクライアントと言うよりもThickクライアントのように感じてしまうのですが、どうでしょう?
素のままのSwing(上手い言い方ではありませんね)ではやはり、Windows上に限って考えた場合は(多くのユーザはWindowsが圧倒的に多いことを考えると)先に記述されている方の言うとおり、VB/VCに軍配が上がるように思えます。
しかしJava Web Startの利点を上手く取り入れてリッチクライアントを作成することにより、VB/VCにはない利点がJavaクライアントに生まれてくるように思えます。
もっとも、.NETプラットフォームが普及しだすと状況はまた変わるのかもしれませんけど。

Flashは私も最近興味があります。
ただKen-Labさんの言うとおり、ある程度カルチャーの違いを克服しなければいけない点や、Flash(ActionScript?)を利用できる開発者(デザイナーではなく)がJavaに比べると圧倒的に少ないことを考えると実際のプロジェクトに適用する場合には、少し躊躇してしまいます。
またFlashMXに標準で付いているサーバーサイド連携の手段や、Flash Remoting MXの使い勝手は、Javaメインの私から見ると非常に使い勝手(開発効率、保守性)が悪い、ように感じてしまい、そこでも躊躇してしまいます。

そんなわけで、今これからリッチクライアントを作成する場合、やってみたい順としては

1. Java Web Start & Swing & (EJB or Webサービス)
2. MS Office System & Webサービス
3. (C# or VB) .NET

になるような気がします。


[ メッセージ編集済み 編集者: Hush 編集日時 2003-07-24 23:37 ]
なべぞう
ベテラン
会議室デビュー日: 2003/07/07
投稿数: 98
お住まい・勤務地: 岡山県
投稿日時: 2003-07-25 09:16
みなさんレスありがとうございます。
個人的な実感としてはSwing,SWTのレイアウトマネージャがもう
少しどうにかならないかと思います。VB/VCのようにコントロー
ル類を手軽に自由に配置できないのが我慢なりません。
(私の勉強不足・工夫不足かもしれませんが・・・)

また肝心のコントロール類も、異機種での動作保障を追及したた
めVB/VCに比べあまりにも貧弱です。

そういった点を考えるとJava Web Startもあまり有効な技術で
はない気がします。

あとは.NETに乗り換えるかMacromedia Flashに突っ走るかです
かね。
taku
ぬし
会議室デビュー日: 2002/11/12
投稿数: 918
お住まい・勤務地: 墨田区→中野区
投稿日時: 2003-07-25 10:00
引用:

Hushさんの書き込み (2003-07-24 20:24) より:
私はJavaのリッチクライアントは、Applet、Swing、SWTそのものというより、Java Web Startに注目しています。


 私もJava Web Startには注目していますが、
比べる観点がおかしくないですか?
Java Web Startはあくまでも配備技術です。
(サンのJavaドキュメントで配備に分類されています)
比べるなら、SwingとSWT、AppletとJava Web Start、
こういった比較じゃないと不自然です。
Wata
ぬし
会議室デビュー日: 2003/05/17
投稿数: 279
投稿日時: 2003-07-25 10:19
どうも、Wataと申します。

引用:

なべぞうさんの書き込み (2003-07-25 09:16) より:
また肝心のコントロール類も、異機種での動作保障を追及したた
めVB/VCに比べあまりにも貧弱です。


なべぞうさんが求めているリッチクライアントとはどのレベルのものなのかかよくわかりませんが、Swingならj2sdkに付属のSwingSet2のデモで実現されているようなものが不十分だとするとつらいかと思います。SWTベースならEclipseのUIレベル以上のものは非常に厳しいでしょうね。

また、SWTに関してはSWT単体で提供されている機能だけだとかなり簡単なものしかないですので、JFaceと併用することを考えた方がよいと思います。
JFaceの使用については、次の記事が参考になると思います。
http://www-6.ibm.com/jp/developerworks/opensource/030502/j_os-ecgui3.html

また、レイアウトについてですが、
AWT/Swingでは、とてもお手軽とはいえませんがnullレイアウトを使用することで、すべてのコントロールを絶対座標で自由に配置することができます。
SWTはAWT/Swingにくらべて、GridLayout、FormLayoutなどの強力なレイアウトが可能です。
SWTのレイアウトに関しては、次のページが参考になると思います。
http://mu.dns-tokyo.jp/layout/Understanding%20Layouts%20in%20SWTjp.htm

…というか、むしろVBのフォームやVCのダイアログのようなマウス操作でのGUI作成がしたいということでしょうか?
そういうツールなら探せばあると思いますよ。Eclipse用のそういうプラググインがあったと思います。(使ったことはないので使い勝手はわかりません。 )

どちらにしろ、上っ面だけの利便性にとらわれて拡張性やロジックの実装につまずかないよう気をつけるとよいと思います。

# ちなみに、私はVCのMFCはとても使いこなせそうに無いのでSWT+JFaceにしました。
# だって本屋いってもろくな本が売ってないんだもん

以上、参考になれば幸いです。

スキルアップ/キャリアアップ(JOB@IT)