【Avalon】WinFX を語るスレ Part5【Indigo】
レス数が1000を超えています。これ以上書き込みはできません。
0001名無しさん♯
NGNGhttp://msdn.microsoft.com/windowsvista/
WinFX SDK
http://winfx.msdn.microsoft.com/library/
Windows Vista
http://www.microsoft.com/windowsvista/default.mspx
http://www.microsoft.com/japan/windowsvista/default.mspx
過去スレ
Part4 http://pc8.2ch.net/test/read.cgi/tech/1090939006/
Part3 http://pc5.2ch.net/test/read.cgi/tech/1071150423/
Part2 http://pc5.2ch.net/tech/kako/1069/10693/1069394880.html
Part1 http://pc5.2ch.net/tech/kako/1067/10674/1067489881.html
0930デフォルトの名無しさん
2006/02/11(土) 19:18:49んな一言で説明できるようなもんでもないんだけどな。
とりあえず、Controlというオブジェクトが極端にでかい。たった一つのクラスで
ほとんど実装してるような感じだ。これを比較的素直にそのまま実装したWinForm
のControlクラスをildasmででものぞいてみればいい。アホのようにでかいから。
しかもこれはカーネルリソースを消費するわ余計な内部状態まで持つので同期を
しなくてはならない。
結果としてコントロールはもっと軽くなくてはいけないのに非常に重い仕組みに
なってしまっている。これの証明は簡単でIEでもOfficeでもMozillaでもそういう
ものがすべて「一つのコントロールに独自に描画」してることがはっきり示している。
CheckedListBoxがなんでCheckBoxの集合になっていない?ListBoxがなんで
Labelの集合になっていない?重いからだよ。
まあ、だからWPFはトップレベルコントロール以外にハンドルを持たせないように
なっている。
0931デフォルトの名無しさん
2006/02/11(土) 19:27:18それはWinFormsのラップの仕方が悪いと言わんか?
生APIや他のライブラリでは特に重く無いんだから。
あとブラウザが独自描画なのは、<input>タグを大量に並べたHTMLが
OSのリソースを消費してしまうと、ブラクラになるからだろ。
0932デフォルトの名無しさん
2006/02/11(土) 20:59:510933デフォルトの名無しさん
2006/02/11(土) 23:08:43呼び出し回数の多いGUI系はどうしても遅くなる。
高速化のアプローチとしては処理の大半をNativeでするか、Managedでするかで
Native-Managed間の呼び出しを減らすのが肝心。
0934デフォルトの名無しさん
2006/02/11(土) 23:39:49http://d.hatena.ne.jp/ladybug/20060206#p1
0935デフォルトの名無しさん
2006/02/11(土) 23:44:00重いのはWinFXまでの間に合わせに突貫工事で何も考えずにでっち上げたから。
0936デフォルトの名無しさん
2006/02/12(日) 00:12:32unmanageっても、MFCとか使うとメッセージ飛びまくりで遅いのは仕方がねー気がするから、
WTLにでも移行しとけでツルツル行かないかな。
0937デフォルトの名無しさん
2006/02/12(日) 00:20:171. 描画が遅い。WinFormsが糞、GDI+が糞
→ Vistaでの見通し: ○ ただしハード要件は高い。
2. 初回起動が遅い。
→ Vistaでの見通し: △ 解決されるはずだったが不透明。
3. シェル非対応。Win32依存大
→ Vistaでの見通し: × もうダメ。
0938デフォルトの名無しさん
2006/02/12(日) 03:04:03まぁそれが正解。
>>937
2 2.0の製品版のサービスに.NET Optimization Serviceってのがあるから調べてみ。
3.
WPFの構造だが、下位にMIL(Media Integration Layer)というのがある。これのさらにコア
部分がmilcore.dllというネイティブDLL。んでシェルはこれを使う。Win32じゃない。
シェルが.NETをホスティングしてくれるかについてはしらね。
どっちにしろWin32では非力すぎるので、中心になるものは今までのAPIセットで言えば
DirectX9に相当するもの(IDirect3DDevice9Exだな)。Win32依存が増えるということはない。
いや、DirectX9をWin32に含めて考える人や、「私は今までビジネスアプリでもDirectXで
やってましたよ」なんて人には依存が増えるといえるかもしれないが…。
0939デフォルトの名無しさん
2006/02/12(日) 03:25:41Optimization Serviceってngenをバックグラウンドでやるだけでそ。
初回起動は関知しないのでは。
何らかの形でWindowsでWinFXアプリが動いていれば生かされるが、
Optimization Serviceがあろうとなかろうと2回目以降は速くて問題ない。
問題は初回。
ただngenは良くなっている。
シェル非対応は決定事項で、milcore.dllとはまた別の互換性の問題。
0940デフォルトの名無しさん
2006/02/12(日) 12:06:51そのくらい気づけよwww
0941デフォルトの名無しさん
2006/02/12(日) 13:09:18とっととMac互換のAPIでも用意すればいいのに
0942デフォルトの名無しさん
2006/02/12(日) 14:02:03遅レスだがSwingがおもいってのは最新のJDK1.5を使ってのことか?
0943デフォルトの名無しさん
2006/02/12(日) 21:41:22ひどいよゲイシ
0944デフォルトの名無しさん
2006/02/12(日) 22:06:08今のところVistaは全体的にもっさりな気が
0945デフォルトの名無しさん
2006/02/13(月) 00:01:120946デフォルトの名無しさん
2006/02/14(火) 06:33:430947デフォルトの名無しさん
2006/02/14(火) 06:55:06遅レスだが
>シェル非対応は決定事項で、milcore.dllとはまた別の互換性の問題。
指摘してるのそこじゃねー。
新しいシェルどうみたってWin32じゃねーじゃないか。Win32はろくにアニメーションも
出来るような構造になってないのに。選択肢としてはDirectXを直で使ってるか
なんか新しいもの作ったかだ。
んでmilcoreに依存しているようなのでこれつかってシェル作ってんだろ。
そういえばMSはこれを非公開にする予定らしいが、となるとネイティブからは
Vista用の新しいUIは使えないことになる。どうするんだろ?C++/CLIかCLR
Hosting使えってか?
0948デフォルトの名無しさん
2006/02/15(水) 01:42:06使えるよん
0949デフォルトの名無しさん
2006/02/15(水) 02:12:16有識者?なら教えて。
調べてるんだけども、その方法、APIがまったく見つからん。
んーと、例えばちょっとボタンコントロールにトランスフォームを仕掛けた上で
Windowに貼り付けたいんだけど。具体的には斜めにするとか。
0950デフォルトの名無しさん
2006/02/15(水) 21:51:14現状で処理速度に期待するのはどうかと思うぞ。
2月のCTPで初めて全機能が乗るのであれば、バグ潰しや最適化はその後で行うはずだし。
0951デフォルトの名無しさん
2006/02/15(水) 22:35:44リリース版はもう少し早くなってるはず
0952デフォルトの名無しさん
2006/02/16(木) 00:21:000953デフォルトの名無しさん
2006/02/16(木) 01:00:30経験則って何さ。現状デバッグコードが大量に入っているのは事実だろうし、
機能追加してるときに最適化なんて考えてないor優先されないのも事実だろ。
それにもうクライアントOS自体4, 5年出てないんだぜ?状況が変わりすぎてて
「経験則」とかいうもの自体あてにならん。
0954デフォルトの名無しさん
2006/02/16(木) 02:07:26あー、無理無理。早くなるなんてあり得ん。もっさりはもっさり。
0955デフォルトの名無しさん
2006/02/16(木) 02:08:42デバッグモードを使ったことないだろ? な。だから、今出てるのにでバックコードが大量に入ってるなんて言えちゃうんだよ。
0956デフォルトの名無しさん
2006/02/16(木) 02:09:49>現状デバッグコードが大量に入っているのは事実だろうし
ほう、ソースは?
0957デフォルトの名無しさん
2006/02/16(木) 02:20:150958デフォルトの名無しさん
2006/02/16(木) 03:15:44いつになったら仕様がFix(実装が終了)したbeta出すんだ?
今月のやつがそうだっけ?
0959デフォルトの名無しさん
2006/02/16(木) 09:02:48もう、大きな手を加えるのは無理だな。
ほぼ今の状態で発売だろ。せいぜい Plus みたいなオプションがつくぐらい。
0960デフォルトの名無しさん
2006/02/16(木) 12:32:43>ttp://nikkeibp.jp/wcs/leaf/CID/onair/jp/biz/422323
>Xbox360の描く未来に太刀打ちできる企業は存在しない
やっぱ、WinFX/PC〜罰箱でしか未来の構想は実現できないんだおね。
0961デフォルトの名無しさん
2006/02/16(木) 13:55:180962デフォルトの名無しさん
2006/02/16(木) 14:51:17http://www.linuxedge.org/?q=node/55
http://www.freedesktop.org/~davidr/xgl-demo1.xvid.avi
0963デフォルトの名無しさん
2006/02/16(木) 15:14:49948ではないが・・・
内容をちゃんと読んでいないが、
↓あたりが多少参考になるかもしれない
http://blogs.msdn.com/nickkramer/archive/2005/07/18/440085.aspx
0964デフォルトの名無しさん
2006/02/16(木) 17:55:37NECのPCエンジン構想を思い出すな。
0965デフォルトの名無しさん
2006/02/16(木) 23:01:02大前の理論から言うと
一昔前のNHKヒット作品はアメリカドラマ(ER)ってことになるな。
0966デフォルトの名無しさん
2006/02/16(木) 23:56:53でも、まあ、Linuxは敵じゃねーよ。デスクトップではさ。問題はIntelマック。
0967デフォルトの名無しさん
2006/02/17(金) 00:00:13Mac OSXがMacというハードウェアでしか動かない以上、
Macというハードウェアの数までしか普及しないから敵にはならん。
真似されて終わり。
0968デフォルトの名無しさん
2006/02/17(金) 00:12:380969デフォルトの名無しさん
2006/02/17(金) 00:18:14それは無理でしょ。
VistaのIEとかShellがななめってるコントロール使ってますか?
0970デフォルトの名無しさん
2006/02/17(金) 00:40:44それはなんて名前のコントロールですか?
どうやって使うのですか?
0971デフォルトの名無しさん
2006/02/17(金) 01:47:190972デフォルトの名無しさん
2006/02/17(金) 05:04:28眺めてみた。
なんかダメそうだな。構造上はWin32の上に構築されているようだが新しい環境の
実体はほとんどマネージコードのような印象を受ける。あ、その先はWin32とAvalonの
関係とかAvalonからHWndつかおうとかその逆とかそういう話のようだよ(つまり望んで
いるのとちと違う、参考にはなるが)。
>>971
そりゃ、Win32の上にあるのだもの。俺が挙げているのは主にそのHWndの中だ。
あのレベルの描画は現状ならDirectXを使わないと出来ない。でもDirectXは
非常にPureすぎてこういうビジネスアプリに使うのにはとてもむかないのよ。
だから上位にそれ用のレンダリングエンジンやらレイアウトエンジンやらタイマー
やらのネイティブライブラリでも作っているはずでそれを直接使うことが出来
ないか?という話(のつもり)だった。
結論としてはそういうものはマネージからしか使えなさそうだな。
素直にマネージ使いますか。…というかアンチがよくいうWin32が主体とかいうの、
こんなレベルの扱いでいってるのか?互換維持以上のレベルに見えない。
0973デフォルトの名無しさん
2006/02/17(金) 12:14:21ExplorerのボタンはHWNDだって答えただけなんだけど。
AvalonのボタンはPresentaionFramework.dllに入ってるんだから、
そりゃネイティブから直接呼ぶのは無理だろ。
0974デフォルトの名無しさん
2006/02/17(金) 13:21:53コア構想の事?
0975デフォルトの名無しさん
2006/02/17(金) 20:17:39RXシリーズのこと?
0976デフォルトの名無しさん
2006/02/18(土) 13:32:52しかないの?
0977デフォルトの名無しさん
2006/02/18(土) 14:19:44このすれよめ
コードネームCiderというGUIツールがある
0978デフォルトの名無しさん
2006/02/18(土) 14:58:41Cider は VS 拡張のデザイナでしょ? XAML 用の CodeDOM の事言ってるんだけど
0979デフォルトの名無しさん
2006/02/23(木) 03:05:390980デフォルトの名無しさん
2006/02/23(木) 08:54:330981デフォルトの名無しさん
2006/02/23(木) 12:36:440982デフォルトの名無しさん
2006/02/23(木) 12:44:480983デフォルトの名無しさん
2006/02/23(木) 12:45:340984デフォルトの名無しさん
2006/02/23(木) 12:58:280985デフォルトの名無しさん
2006/02/23(木) 15:46:190986デフォルトの名無しさん
2006/02/23(木) 22:09:040987デフォルトの名無しさん
2006/02/24(金) 07:33:420988デフォルトの名無しさん
2006/02/24(金) 08:36:49Vista にちゃんと標準でインストールされるんだな。デフォルトで入るかどうかはわからんが
0989デフォルトの名無しさん
2006/02/24(金) 11:29:110990デフォルトの名無しさん
2006/02/24(金) 12:23:180991デフォルトの名無しさん
2006/02/24(金) 13:09:150992WinFX終わった
2006/02/25(土) 14:03:30残念!これが現実!!
0993デフォルトの名無しさん
2006/02/25(土) 17:43:32時代はAJAX、Java、PHPですか・・・
クライアントはC++でゴリゴリ
0994デフォルトの名無しさん
2006/02/25(土) 18:20:020995デフォルトの名無しさん
2006/02/25(土) 19:51:450996デフォルトの名無しさん
2006/02/25(土) 19:52:240997デフォルトの名無しさん
2006/02/25(土) 19:53:140998デフォルトの名無しさん
2006/02/25(土) 19:53:490999デフォルトの名無しさん
2006/02/25(土) 19:54:401000デフォルトの名無しさん
2006/02/25(土) 20:01:2210011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。