トップページ⇒tech
983コメント266KB

クライアントサイドJavaどうよ? part3

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
.NET軍に蹂躙されてしまったクライアントサイド。
Swing/AWTの安住の地を探すためのスレ。

前スレ
http://pc2.2ch.net/test/read.cgi/tech/1032665721/l50
前々スレ
http://pc3.2ch.net/tech/kako/1002/10021/1002160815.html
0412デフォルトの名無しさんNGNG
>>411
> 本物の楽器と比べると
比べるなよ。。。

デジタルがアナログに比べて遅延がでるのは宿命。
0413デフォルトの名無しさんNGNG
>>412
いやいや、本格的に楽器やってた人ならあからさまに気になるほどの遅延が
あるって意味。

やっぱ手での演奏は専用ハードじゃないと無理かね。
0414デフォルトの名無しさんNGNG
>>413
少なくともデバイスドライバーみたいなOSに密着したソフトの支援がないと無理だと思われ。

ちなみに、流行のデジタルエフェクターを、遅延があるという理由で嫌うミュージシャンは多い。
0415デフォルトの名無しさんNGNG
エレキのモデリングアンプってチョイ遅れるよな
0416デフォルトの名無しさんNGNG
結論:Javaは遅い。
0417デフォルトの名無しさんNGNG
>>416
それがどうした
0418416NGNG
>>417
エイプリルフールですた。
0419デフォルトの名無しさんNGNG
SUNがjava1.4のjava.util.Hashtableに重大なバグがあることを4/1 20:00
に発表した。なお、バグの修正をしたバージョンを明日未明に公開することを
宣言した。

ソース
http://jp.sun.com/service/support/
0420デフォルトの名無しさんNGNG
JDK1.6で、より精密なスレッドスケジューリングとGC管理を可能にする
インターフェイスがコア APIに追加されることが決定しました。
0421デフォルトの名無しさんNGNG
大手PCメーカー、もうすぐJavaをバンドル
http://www.zdnet.co.jp/news/0304/01/ne00_java.html
0422デフォルトの名無しさんNGNG
>>421
4/1 のニュースだしなぁ
0423デフォルトの名無しさんNGNG
>>422
原文は31日
0424デフォルトの名無しさんNGNG
いや、だからお前らWinにJavaがノって何が楽しいんだよ
0425デフォルトの名無しさんNGNG
糞っぷりが楽しい。
0426デフォルトの名無しさんNGNG
SunはMSを攻撃してJavaを普及させようと必死だが
Javaがユーザーに必要とされるシロモノだったら、とっくに>>422のような動きになっていたはずだ
WinにJavaがのっても誰も使うはずがない
0427デフォルトの名無しさんNGNG
>>426
そのへんは鶏と卵だから。といってみるテスト。
0428デフォルトの名無しさんNGNG
Jarに固めればWクリック一発で起動するから、SunのJVMが標準装備に
なればJavaでフリーソフトとか作ってもそれなりに使ってもらえるとか。
0429デフォルトの名無しさんNGNG
>>Javaでフリーソフトとか作ってもそれなりに使ってもらえるとか。
んでJavaでつくって使い物になるものって何!?
0430デフォルトの名無しさんNGNG
Java+Swingのメモ帳・・・絶対使わないな。
Javaならではというクライアント側アプリは何が考えられる?純粋な疑問です。
0431デフォルトの名無しさんNGNG
>>430
そんなもんがあったらJavaももっと普及してただろう
0432デフォルトの名無しさんNGNG
Javaの【一度書いたらどこでも動く】なんて特徴はむしろ悪影響。
基本ライブラリはそういう方向でいいと思うが、GUIに関する部分は
ある程度OS依存な方がいいと思う。

そういう意味でMacOSXのCocoa+Javaという組み合わせは非常に気にNULL。
0433デフォルトの名無しさんNGNG
言語にGUIが組み込まれたのは良いと思ったんだがなあ。
使ってみるととんでもなく(ry
0434デフォルトの名無しさんNGNG
むしろ JAR にバンドルされた HTML からダイアログや GUI を組み立て
られるくらい手軽なら、それはそれでよかったんだが。自分で作ろうと
思いつつ暇が… つーか、あったらみんな使うのかな、クライアントサイド
でも HTML で GUI。ロジックと直結できる分ブラウザより技が使えると
思うんだが (ボタンが押されたら DB 参照とか…)。
0435デフォルトの名無しさんNGNG
XULみたいだな
0436デフォルトの名無しさんNGNG
というか、今のWindowsがまさにクライアントサイドでHTMLをUIに使いまくってるわけだが。
0437デフォルトの名無しさんNGNG
>>434
言ってる事と違うかもしれないが
Swingだったら、たとえばボタンのラベルを
HTMLの<br>タグ使ったりして2行にしたり出来なかったっけ?
あと<i>でイタリックにしたり・・・
0438デフォルトの名無しさんNGNG
>>437
例えば
--- Kakikomi.html ---

<input type="text" name="name"><input type="text" name="email">
<textarea name="message">
<input type="submit" value="書き込む"> <input type="reset" value="やめる">

-------------------
で、かちゅーしゃとかJaneとかの書き込みダイアログのUIを生成するってことでしょ。
0439デフォルトの名無しさんNGNG
ああ〜そいうことか〜
でもさ、それがXMLで書けるやつあるじゃん
BeanBuilderってやつ
あれのコードはXMLだよ
で、起動する時はそのXMLファイルを読み込んでやれば
かってにウインドウが立ち上がって・・・
try {
InputStream is = new BufferedInputStream(
new FileInputStream("tutorial.xml"));
XMLDecoder d = new XMLDecoder(is);
JFrame f = (JFrame)d.readObject();
} catch (IOException ex) {
System.out.println(ex.getMessage());
}
0440デフォルトの名無しさんNGNG
>>439
うーん?そういうことじゃない(と思う)んだよなあ。
できあがったUIを保存するんじゃなくて、UIをいきなりテキストで書くんでしょ。

>>439のtutorial.xmlの中身って何も見ずに書ける?>>438みたいに。
0441デフォルトの名無しさんNGNG
>>439
俺が考えてたのは、それにさらに HTML っぽいイベントハンドル用の
スクリプト (JSP みたいに実行時コンパイル/静的でもいいけど) する
ような奴。やっぱ GUI まわりって細かい仕様変更入りやすいから、
手作業やポトペタで GUI コンポーネントを組み立てるより HTML で
作ったほうが楽なんだよなぁ。JavaScript じゃ使えない同期化処理
やマルチスレッド化もできるし。誰か一緒にオプソで立ち上げねー?

<SCRIPT LANGUAGE="Java">
private void execHoge(Form hoge){
  …
}
</SCRIPT>

<FORM ACTION="method:///execHoge(this);">
名前: <INPUT TYPE="TEXT" SIZE="40">
<INPUT TYPE="SUBMIT" VALUE="OK">
</FORM>
0442デフォルトの名無しさんNGNG
>>441
俺昔ちょっとだけ作ったことあるよ。
で、HTML部分もろくに実装できてないうちにCSS2に対応させ始めちゃって、
途中でマンドクサクなってやめた(w
0443デフォルトの名無しさんNGNG
>>441
それ、Longhornで。
HTMLじゃないが。
0444439NGNG
うんやっぱ俺は勘違いしてたみたいだ>HTML

ちなみにXMLはタグを解読すればかけると思うが
基本的に、BeanBuilderはGUIエディタなので
人が書くには無理

さらに(また、話を混乱させるみたいで恐縮だが)ピ-ナッツ
とかいう、Javaのインタプリタあるじゃん
あれで、一行一行

>f=new Frame();
>f.setVisible(true);

とか、コマンドでやったらどうなるんだろう

>>441
それはやっぱり、ブラウザアプリになるわけ?
それとも、ウィンドウアプリを目指しているの?
0445デフォルトの名無しさんNGNG
>>443
ロングホーンの恩恵はJavaは受けられないじゃろ。。
ところでロングホーンのUIの仕様ってどこで読める?(調べずにc⌒っ´Д`)φカキコ
0446デフォルトの名無しさんNGNG
>>440
そうそう、現状って簡単なダイアログの GUI 書くだけでも手作業より
ポトペタ RAD 起動するの待ってた方が早いじゃん。で、秀丸 + HTML
なら 5 分でかけるレイアウトも GUI コンポーネント並べるだけで
結構かかってしまう。だったら HTML をリソース持ちして名前指定で
一発表示、イベントハンドリングもできまっせ、みたいなのがあったら
良いなぁと。

これならちゃんとしたデザイナにデザインしてもらった UI にロジック
埋め込むのも簡単でしょ。
0447デフォルトの名無しさんNGNG
>>444
ウィンドウアプリだってばよ。(俺は>>441じゃないけど)
おそらく、Webアプリとスタンド亜ローンのUIを共通化させたいじゃねぇの?( ´_ゝ`)
0448デフォルトの名無しさんNGNG
ちなみにちょっと話はずれるが、URにCSSを適用させるにはjavax.swing.text.StyleSheetでできるけど、
(c.setForeground(StyleConstants.getForeground(style)); みたいに)
ちゃんとしたUIに利用したけりゃ全然役に立たない。
かといって、HTMLで属性にごちゃごちゃ書いていくのも保守性の面で疑問符。
どうせ作るならやっぱりちゃんとHTML+CSSにしたいところ。

と、独り言メモc⌒っ*゚ー゚)φ メモメモ...
0449デフォルトの名無しさんNGNG
>>GUI コンポーネント並べるだけで
結構かかってしまう

同感
俺なんかレイアウトつかうと分けわかんなくなるから
すべてsetLayout(null)しちゃう。んで、setBounds()
まあ話が脱線したが・・・
ちなみに>>439の言ってるやつってこういうやつなんだが・・・
(>>439じゃないよ)
<void method="add">
<object id="JButton0" class="javax.swing.JButton">
<string>Remove All</string>
<void property="bounds">
<object class="java.awt.Rectangle">
<int>105</int>
<int>249</int>
<int>105</int>
<int>26</int>
</object>
</void>
<void method="addActionListener">
<object class="java.beans.EventHandler" method="create">
<class>java.awt.event.ActionListener</class>
<object idref="DefaultListModel0"/>
<string>removeAllElements</string>
</object>
</void>
</object>
</void>

0450デフォルトの名無しさんNGNG
>>444
思いっきりローカルアプリ。でも GUI リソースが HTML なんでサーバとの
統合もしやすいかなと。

>>447
まぁそんなところか。今なら余ってる鯖サイド連中を引っ張ってこれる。
0451デフォルトの名無しさんNGNG
>>449
おもいっきり JDK1.4 の XML エンコード機能やな。
0452デフォルトの名無しさんNGNG
> 今なら余ってる鯖サイド連中を引っ張ってこれる。

多分これ重要です。
0453デフォルトの名無しさんNGNG
つーか今時Javaが遅いとかいってるのは使ったことないかマシンがおんぼろか
どっちかなんだろ。今時ふつーメモリは256M以上乗ってるし、CPUは1GHz以上
あるもんだが。それにメモリさえ潤沢ならCPU500MHzでも軽く動くぞ。
あとクライアントサイドのJavaはアプレットを除いて(アプレットも一応はクライア
ントサイドだから)ローカル資源に制限なくアクセスできることが長所。さらに、
Sunが提供している基本コンポーネントでたいがいの面倒は見てくれるから
楽ができる。パフォーマンスも悪くない(実際使ってみてからものを言えよ)。

ただ、GUI コンポーネントのレイアウトがひでぇなあというのは同感だ。
0454デフォルトの名無しさんNGNG
>>453
お前、DBの更新画面とか、糞クライアントしかつくったことないだろ。
0455デフォルトの名無しさんNGNG
>>453
お前学生だろ。世間知らず
0456デフォルトの名無しさんNGNG
>>454
つーか、そもそも君は使ってみたのかね?話はそれからだ。
だが、PureJavaでCASEツールのような巨大アプリは無理だ。
1アプリでウィンドウやらボタンやらコンポーネントを大量に
生成して負荷の高い処理をさせるにはJavaは向かない。

ただし、クライアント用(要は一般人用)のちょっとしたアプリ
程度なら十分だし、処理速度も気にならん。要は適材適所。
数年前のレベルで思考停止して遅い遅いとわめくだけなら
馬鹿でもできるよ。
0457デフォルトの名無しさんNGNG
>>453は、>>433以前のレスに対して文句言ってるみたいなので>>434さんは気にせず出てきてくださいな。
(”つーか”がどこにかかるのかわからん)
0458デフォルトの名無しさんNGNG
クライアント用のちょっとしたアプリだからこそサクサク動いて欲しいってもんだ。
0459デフォルトの名無しさんNGNG
>>457
うーん、どんなものが必要かちょっと妄想してみた。

1. HTML パーサー
2. レンダリングエンジン
3. JSP バリのダイナミックコンパイル & クラスローダー (Mozilla の js.jar で代用も?)

3 は何とかなるとしても 1 と 2 がネックかな。文字列解析とレンダリング
は Java がネックとしてる処理だし。
0460デフォルトの名無しさんNGNG
ちょっと適当に作ってみた。ソースうpします
0461デフォルトの名無しさんNGNG
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=64
みたいなHTML(今はXHTMLで書いたけど)が、あったとして、
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=64
でUI生成ってことで合ってますよね>>434
(ソース汚いですがイメージが伝わればそれでいいです)
0462デフォルトの名無しさんNGNG
失礼。2つ目は
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=65
でした。(この掲示板勝手に;(セミコロン)が入るみたいなんで、適当に直してクレクレ)
0463デフォルトの名無しさんNGNG
>>461-462
そうそう! 言いたかったのはこういう奴の発展系。スタイルシート
でレイアウト調整して、裏のロジックとの繋ぎや簡単な処理のための
実行時スクリプトが記述できる奴さ。
0464デフォルトの名無しさんNGNG
>>463
俺と同じこと考えてるな。
ただ、実行時スクリプトは少し反対気味だな。
実装が( ゚Д゚)マンドクセーってのもあるし、仕様が肥大化するのもどうかと思う。
(ほんとにやるかどうか知らんけど)ひとまずHTML+CSSが落ち着いてから、もしくは
少し離れた感じのプロジェクトでやった方がいいと思う。
<FORM ACTION="method:///execHoge(this);"> は面白そうだけどね。

独り言
・XHTML1.0+CSS2(or CSS1)が無難?
・awt,swing.swtを差し替え可能に(Namespaceで振り分け?)
0465デフォルトの名無しさんNGNG
>>430
JavaならではではないけどJavaで書かれたソース公開の2chビューアが
あればいいな(てもうあるのかな)
0466デフォルトの名無しさんNGNG
>>465
ローカルプロキシタイプならあるみたいだね。
スタンド亜ローンは知らない。
0467デフォルトの名無しさんNGNG
>>464
JavaScript みたいな完全インタープリタを実装するんじゃなくて、スクリプトから
Java ソースを生成して実行時にコンパイルして実行する感じ。これなら仕様が
決まっているので肥大化しないだろう。というか <SCRIPT LANGUAGE="hoge"> の
hoge 指定によって呼び出すインタープリタをプラグイン的に切り替えれれば
JavaScirpt や VBScript も乗るかも。

<FORM ACTION="..."> や <A HREF="..."> は HTTP とか Method Invocation の
他に RMI/IIOP なんかと統合出来たら面白いかもなー。あとリモートの EJB とか。
0468デフォルトの名無しさんNGNG
>>467
Antをパクレ。多分それでおしまい。
0469デフォルトの名無しさんNGNG
>>468
もう少し詳しくお願いします。
0470名無しNGNG
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/vcrefCDHtmlDialog.asp
これのJava版?
0471デフォルトの名無しさんNGNG
>>465
monalipseどうよ?
Eclipseのプラグ印だけど
0472デフォルトの名無しさんNGNG
>>467
Longhorn Avalon
0473デフォルトの名無しさんNGNG
>>465-466
jBVしかないっぽいね。スタンドアロンのもほしいな。
0474デフォルトの名無しさんNGNG
1.4.2beta出てるよ。
起動だとか早くなっているとrelease notesには書いてあるけれど、実際早い気がする!?
Hotspotも早くなってる。SSE, SSE2に対応した、とか書いてあるし(藁
0475デフォルトの名無しさんNGNG
確かにSwingの立ち上がりが早い。
それだけに相変わらずのフォントが悔やまれる。
0476デフォルトの名無しさんNGNG
これすごく(・∀・)イイ

っていうか
 ─┼─ │─┼ヽヽ
  ○|  │   │ 〜〜〜
   /   し  │
なんか、普通のソフトみたいに立ち上がる。
いままでなんだったんだろう。。。
0477デフォルトの名無しさんNGNG
ageわすれ
0478デフォルトの名無しさんNGNG
age
0479酸NGNG
>>476
今まで裁判していてJavaそっちのけでした。
.NETにシェア奪われそうなので対応しました。
0480デフォルトの名無しさんNGNG
XPのスキン?が適用されてるのは…どういうことだろう。
0481デフォルトの名無しさんNGNG
>>480
これに向けた準備じゃねぇですか?
http://www.zdnet.co.jp/news/0304/01/ne00_java.html
0482デフォルトの名無しさんNGNG
その大手メーカーらが
ハード固有のJavaAPI公開したらどうなるんだろ?
メーカーによってアプリの速度変わったり・・・
携帯のときと同じく混乱しそう
あんま独自路線のことはやらんでくれよ
ま、
プログラマとしてはうれしいやら悲しいやら・・・
0483デフォルトの名無しさんNGNG
>>482
ハード固有ったって、携帯ほどハード変わらないし。
CPUはみんなインテル互換で音源はサンブラ互換でディスプレーもXVGAかそこら。

いままで120×160の解像度だったのが250×300になったとかだったら泣くけど。
っていうか、どうするねん、iモードの画像。。。
0484デフォルトの名無しさんNGNG
>>475
Swingのフォント表示は、フォントの問題というよりレンダリングエンジンの
問題だと思うんだがどうか。
0485デフォルトの名無しさんNGNG
>>484
あんた馬鹿?
0486デフォルトの名無しさんNGNG
>>482
すでにAppleはMac固有のAPI公開してますし
IBMはSWT公開してますし。
そういうことしちゃいけないのはMicrosoftだけ
0487デフォルトの名無しさんNGNG
>>486
おまえも馬鹿?
0488デフォルトの名無しさんNGNG
1.4.2はすごいということで。
0489デフォルトの名無しさんNGNG
すべてのマシンにJavaChipが搭載されハード固有問題速度問題解決

に期待!
0490デフォルトの名無しさんNGNG
J2SDK1.4.2beta
前よりかなり進化してる。
ダウンロードしながらインストールできるようになった。
インストールする項目をM$Officeのインストール時のよに選択できるようになった。
0491デフォルトの名無しさんNGNG
それでもまだ.NETには追いついてないけどな。(嘲笑激藁
0492デフォルトの名無しさんNGNG
具体的な意見も言えない、議論もできない嘲笑激藁厨は死滅スレにでも逝ってくれ
0493デフォルトの名無しさんNGNG
485や487もな
0494デフォルトの名無しさんNGNG
>>493
おまえも馬鹿 ?
0495デフォルトの名無しさんNGNG
>>491
使ってみた感想として
どのあたりが.NETに追いついていないのか説明してくれ

.NETは他のOSで100% Pure .NETでも 100% Pure C#でも実現していないようだが。
そのあたりは全然Javaに追いついていないようだ。
0496デフォルトの名無しさんNGNG
いまだに100% Pure XXXの幻想に縛られてるアホがいるのか?
AWT/Swingの惨状を直視できないんだろうか。
0497デフォルトの名無しさんNGNG
>>496
いいじゃん。すくなくとも95% Pureは実現できたほうがいいじゃん
0498デフォルトの名無しさんNGNG
.NETは99% Pureなところを狙ってるっぽいね。
0499デフォルトの名無しさんNGNG
>>495
Javaと.NET両方使ってすぐに分からないのなら感性が麻痺してるんだろうな。(嘲笑禿藁
0500デフォルトの名無しさんNGNG
>>499
で、たとえばどこよ?
0501デフォルトの名無しさんNGNG
>>500
「分からないので教えてください」って言えよ。
0502デフォルトの名無しさんNGNG
>>501
>>499がJavaと.NETをどう違うと思ったかなんてわからないからおしえてください。
0503デフォルトの名無しさんNGNG
ちょっとちがった。
漏れには>>499がすぐに分かったような「Javaが.NETに追いついていない」理由はわからないので教えてください。
0504デフォルトの名無しさんNGNG
99% Pure な俺。でも残りの 1% は…
0505デフォルトの名無しさんNGNG
優しさでできています(^o^*)
0506デフォルトの名無しさんNGNG
2chで人間が嫌いになりました。
0507デフォルトの名無しさんNGNG
正確には優しさという名のおせっかいでできていまふ
0508デフォルトの名無しさんNGNG
>>506
いい勉強になりましたね。
だんだんかわいくなってくるんですよ。
MS厨とか。
0509デフォルトの名無しさんNGNG
>>498
せいぜい 60% Pureなんじゃない?
C#に限っては 10% Pure にも満たないと思われ
0510デフォルトの名無しさんNGNG
ただ単に極力ネイティブコールに頼るようにしただけだろ?
だから起動も早くなってるんだよ。
言い換えれば、100% Pure Javaの崩壊。
0511デフォルトの名無しさんNGNG
100% Pure Javaって何?
■ このスレッドは過去ログ倉庫に格納されています