GUIプログラムをWrite Once, Build Anywareするには

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
GUIプログラムをWrite Once, Build Anywareはどうしたらできますか?
やっぱりJavaしかないのでしょうか?
JavaはGUIだと遅いんですよね…。もっと速いやつはないんでしょうか?
昔、C++でのライブラリがあったような気がするんですが。

とりあえず、Win32、FreeBSD、Macでの利用を検討しています。
2デフォルトの名無しさん:2001/05/18(金) 19:40
C#がある。
3デフォルトの名無しさん:2001/05/18(金) 19:41
C#はWindows専用。
他のOSでは使えない。
検討中らしいが多分ムリ。
4デフォルトの名無しさん:2001/05/18(金) 19:42
Write Once, Run Anywhere.の間違いかと思ったよ。
5デフォルトの名無しさん:2001/05/18(金) 21:05
GTKはどうよ?
6デフォルトの名無しさん:2001/05/18(金) 21:19
Xのウィンドウマネージャーはどれもクソ。
いっそのことGUIもCUIのshみたいに統一してくれ。
7デフォルトの名無しさん:2001/05/18(金) 22:29
Win32, FreeBSD, Macであれば、Tcl/Tkをライブラリとして使うのも
一考の余地あり。
MacではTixやBLTなどの拡張パッケージが使えないという難点もあるけど、
基本機能だけならこれで十分。
工夫次第でJAVAよりは圧倒的に速くて軽くなるよ。
8デフォルトの名無しさん:2001/05/18(金) 23:16
TkはUIデザインがクソ
9デフォルトの名無しさん:2001/05/19(土) 00:14
>1
Delphi&Kylix使え。
全プラットフォームの80%はカバーできるぞ
10名無しさん:2001/05/19(土) 00:17
age
11名無しさん:2001/05/19(土) 00:17
age
12名無しさん:2001/05/19(土) 00:17
age
13名無しさん:2001/05/19(土) 00:18
age
14名無しさん:2001/05/19(土) 00:18
age
15デフォルトの名無しさん:2001/05/19(土) 00:56
>>6
ウィンドウマネージャの話なんてしてないじゃん。
16デフォルトの名無しさん:2001/05/19(土) 01:42
MacってMacOS9以前? これで選択肢減るね。

http://www.devolution.com/~slouken/SDL/
SDLなんてどう? GUIライブラリもあるから意外に使えるかもよ。
171:2001/05/19(土) 22:21
>>16
Mac9.1です。

>>9
個人ユーザーにはちょっと…。

>>7
Tcl/Tkってスクリプト言語ですよね。
遅くならないの?

>>5
GTKってよさそうですね。
ちょっと勉強してみます。
181:2001/05/19(土) 22:21
あげましょう(W
19デフォルトの名無しさん:2001/05/19(土) 22:22
javaも.NETに対応すればそれなりに早くなると思われ
20デフォルトの名無しさん:2001/05/19(土) 22:29
つうか、素直にJavaを使うのが一番いい。
ネイティブコンパイラも出てきてるし。
21デフォルトの名無しさん:2001/05/19(土) 22:36
>>20
>ネイティブコンパイラ
まじで?使ってみてぇ!!
22わたしも探しています。:2001/05/19(土) 23:13
>>17
OSXにXサーバを入れるのでない限り、GTK+はMacでは使えない(と思う)。
Windows対応も完成度はいまいち。ポートをやっている人も少なそう。

Tcl/Tkは、本来はライブラリ。>>7は、Tcl/TkをCのライブラリとして
使えと言っている(たぶん)。だけど確かにUIはださい。

gcjはSwingも使える? どちらにしろSwingもださくてヤダ。

Qt。完成度は非常に高い。Macに移植中とのこと。UNIXでフリーソフトの
開発だったら無料。Windowsで使うには、ライセンス料を支払う必要あり。
たしか20万円くらい。高すぎ。

Macが入ると、現在の選択肢はこれぐらいか。
http://www.wxwindows.org/
MacOS Port
http://www.advanced.ch/wxwin/

ほかにもっといいのがあったら教えて。
23デフォルトの名無しさん:2001/05/20(日) 10:28
C++を使うときはライブラリも重要だけど、それ以前にコンパイラの制約も無視できない。
標準からかけ離れすぎてるVisual C++は、それを選んだ時点で移植性を捨てるのと同じ。
24デフォルトの名無しさん:2001/05/21(月) 22:34
>>22
GTKはXなしでも行けるみたいです。
http://www.zdnet.co.jp/macwire/0011/28/n_gimp.html

sylpheedなんかはGTKforWin32なんかで移植されている
そうです。(unstableだそうですが)
25デフォルトの名無しさん:2001/05/21(月) 23:11
>>24
MacGIMPはXを使ってるみたいだけど。GTKをAquaネイティブに
するという話は見たことがない。
26デフォルトの名無しさん:2001/05/21(月) 23:14
>>23
ここでいう VC っていうのは MFC って事ですか?

それとも MFC を使わなくっても VC は標準からかけ離れてるんですか? (マジレス)
27デフォルトの名無しさん:2001/05/21(月) 23:24
Debug Anyware
28デフォルトの名無しさん:2001/05/21(月) 23:33
Full scratch anyware anytime.
29デフォルトの名無しさん:2001/05/21(月) 23:38
>>28
カコイイ!
3023:2001/05/21(月) 23:56
>>26
VC++はボロボロ。

new演算子やdynamic_castで失敗時にどんな例外をスローするか調べてみて。
for (int i = 0; i < 10; i++)としたときのiの寿命を調べてみて。
cstdlibやcstdioなどで宣言される関数の名前空間を調べてみて。
wchar.hの内容を調べてみて。
wchar_tの正体を調べてみて。
テンプレートメンバ関数の制約事項を調べてみて。

他にもいっぱいありすぎて書ききれない。
31デフォルトの名無しさん:2001/05/21(月) 23:59
VCが出た後にC++の標準が決定したから、
仕方ない部分もあると思われ。

問題はVCがもう2年以上メジャーアップデートしてないこと。
次のVisualStudio.NETはキワモノっぽいし。
VC6.5とか出ないかナー
32デフォルトの名無しさん:2001/05/22(火) 00:12
スレのテ−マからは著しく逸脱していますが、>>23 >>30に一言。

プログラマの数と書かれているコ−ドの量から見ると、C++って
ほとんどVCなんじゃないですか? M$は、なんでも自分が標準と
思っているでしょ。
33デフォルトの名無しさん:2001/05/22(火) 00:13
VC++でもANSI基準に準拠するコンパイルオプションがあるよ。
それ使うと付属のライブラリがコンパイルできなくなるけど。
34デフォルトの名無しさん :2001/05/22(火) 00:59
つーか、30はあまり現実を知らないように思う。学生か?
for文のスコープなんて素直に変更してみろよ。どうなるね。
35デフォルトの名無しさん:2001/05/22(火) 01:25
心配なら
{for(int i=0;i<n;++i){
...
}}
って書けばいいんだYO!
36デフォルトの名無しさん:2001/05/22(火) 02:12
Tkってそんなに遅くないよ。内部でプリコンパイルしてるらしいし。
(GUI以外で)遅くなりそうな部分OSに依存しないようなかたちで
Cで書いてsoとかDLLにしてloadしちゃえば?

デザインがダサいのは……しょうがないよなぁー。
まぁ、シンプルでおれは割と好きだけど、今風じゃないよね。
だれか、gtkで書き直してくんないかな?
37デフォルトの名無しさん:2001/05/22(火) 02:40
有名だが、for文のスコープは
#define for if(0);else for
これで書けば?
38デフォルトの名無しさん:2001/05/22(火) 02:42
で、>>30
その辺は知ってるし、気をつければ移植可能なコードは掛ける
ほかにありすぎる部分のうちいくつか教えてくれ、頼む。
あと、知ってるのはauto_ptrの仕様が、
所有権移動後も0にならないってことかな。
3930:2001/05/22(火) 12:44
>>38
知ってることばかりだと思うけど、

C++でもリテラル文字列がcharの配列になっている(そのくせ書き換え不能)。
/Zaオプションが事実上使えないので、言語拡張はすべて問題を起こす。
exportが使えない。
STLの大多数のクラスの実装が不完全。
float版の数学関数がない。
strchr, abs, divなどが多重定義されていない。
set_unexpeced関数がおかしい。
andやorなどが予約語になっていない。
near, fortranなど、アンダスコアのない名前が予約語になっている。
ユニバーサル文字が使えない。
他に、http://member.nifty.ne.jp/~masumoto/cpp/vcbug/

注意すれば問題を回避できるけど、きっと何倍も疲れると思う。
40デフォルトの名無しさん:2001/05/22(火) 12:57
ネスケって
GUIをWriteOnceしているのだろうか?
41デフォルトの名無しさん:2001/05/22(火) 13:51
>>40
ネスケは遅いからWriteOnceじゃない?(爆
42デフォルトの名無しさん:2001/05/22(火) 14:20
じゃあ、その手法を探ればいいんじゃない?
オプソなんだし。
43デフォルトの名無しさん:2001/05/22(火) 19:55
>>36
デザインがダサいのは、Tk自体よりTixとかじゃないの?
他の拡張をあたればもっと見栄えのよいのがあるはずだし、どうしてもなければ自作
すればいいだけじゃない。おそらくその自作ウィジェットは、Write Onceにできる
場合がほとんどだと思うよ。

loadとかでCのモジュールを呼ぶより、C++からTcl/Tkを呼ぶ方がずっと効率がよいの
では?
STLとかも全部使えるし、Tcl Libraryがスレッドやタイマやディレクトリ操作なんかの
OS依存部分もある程度吸収してくれるからね。
44名無し戦隊ナノレンジャー!:2001/05/24(木) 15:09
Javaより遅いネスケの真似はいや〜ん。
45デフォルトの名無しさん:2001/05/24(木) 16:05
>>44
いくらなんでもそんなに遅くねーよ。
46デフォルトの名無しさん:2001/05/27(日) 23:42
>>45
遅いCPUを使うとわかる。
47デフォルトの名無しさん:2001/05/27(日) 23:54
Write once, build anywhere.じゃないが
ラッパを買いとけ。どこかのスレにも書いてあったが。
48デフォルトの名無しさん:2001/05/29(火) 23:10
たぶん1は個人レベルだから、ラッパーを書みたいなめんどくさいことはしないと思う。
49デフォルトの名無しさん:2001/06/02(土) 23:11
素直にJava使え。
50デフォルトの名無しさん:2001/06/03(日) 05:14
Swingを使わないければええのでは。
51デフォルトの名無しさん:2001/06/06(水) 09:27
Mac をあきらめれば、Win+FreeBSD で Gtk がお勧め。

ただ、Win で作った Gtk アプリって、
ダブルクリックで起動すると
必ず DOS 窓が立ち上がるんだけど (標準入出力用?)、
それを抑制する方法ってあるのかな?
52デフォルトの名無しさん:2001/06/06(水) 10:40
関連スレッド
■マルチプラットフォームなGUIライブラリ
http://piza.2ch.net/test/read.cgi?bbs=tech&key=982662451
53デフォルトの名無しさん:2001/06/06(水) 12:18
54デフォルトの名無し:2001/06/07(木) 01:48
OpenStep (藁

 ↑けどナニゲにそう。Write once, compile anywhere
55デフォルトの名無しさん:2001/06/07(木) 06:47
>>20
おい。まともなネイティブコンパイラないじゃん。
URLきぼん。
56デフォルトの名無しさん:2001/06/07(木) 21:23
Visual Cafeってネイティブコンパイルできなかった?
57デフォルトの名無しさん:2001/06/07(木) 21:24
>>55
VisualJ++がある(ワラ
58デフォルトの名無しさん:2001/06/07(木) 21:33
死ん環境はいらぬ(´д`;)
59デフォルトの名無しさん:2001/06/07(木) 21:46
>>57
nativeじゃないしな・・・。
60デフォルトの名無しさん:2001/06/08(金) 00:05
素直にKylix使え。
6151:2001/06/08(金) 11:35
>>53
さんきゅ〜♪

試してみます。
62デフォルトの名無しさん:2001/06/14(木) 23:13
ゲーム機のエミュレータ用のROMファイルとして作るってのはどーだ?
63デフォルトの名無しさん:2001/06/16(土) 16:57
そりゃJavaとなんら変わらんよ
64デフォルトの名無しさん:2001/06/16(土) 17:35
>>6
かなり同意。意思統一がなされてないというかする気もないのがムカツク
65デフォルトの名無しさん:2001/06/16(土) 18:46
Javaより互換性は高いしメモリを喰わないな。
66デフォルトの名無しさん:2001/06/16(土) 19:11
ゲーム向けだけどな
67デフォルトの名無しさん:2001/06/27(水) 17:49
Qt Win 版に非商用・無償ライセンス追加あげ。

ttp://biztech.nikkeibp.co.jp/wcs/show/leaf?CID=onair/biztech/ex03/133901
68デフォルトの名無しさん:2001/06/27(水) 18:12
>>50
同意… っつーかなんでSwingあんなに遅いんですか?
でもAWTだとTreeもTableも自作しなきゃいけないんだけどね…
69デフォルトの名無しさん:2001/06/27(水) 19:12
これでDelphi6も超いい感じ!
70デフォルトの名無しさん:2001/06/27(水) 19:16
>>67
いまダウソ中。でも俺 Qt 使ったことないからすぐには試せないな。

requires Visual C++ 6 って書いてあるけど gcc からは使えないのかねー。
誰か試して欲しいよーん。
71デフォルトの名無しさん
>>70
スラドに、とりあえずやったら駄目だった系の話題が、載ってた。
でも、なんとかなる手はあるんじゃねーのかなあ…