C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: exeファイルの大きさと処理速度について


(過去ログ 61 を表示中)

[トピック内 9 記事 (1 - 9 表示)]  << 0 >>

■35157 / inTopicNo.1)  exeファイルの大きさと処理速度について
  
□投稿者/ めぐ (7回)-(2009/04/21(Tue) 13:26:13)

分類:[C#] 

10Mを超えるEXEがあります。
理由はDATASETをやたら貼り付けている事が原因かな?と思っています。
処理速度が非常に重く(FORMを開く時、検索する時)、新たに作り直す事となりました。(処理速度アップが目的です)
FORMには8つのタブがあり、それぞれのタブに一覧があります。

DATASETを使用せず、DATATABLEを使用します。
似たような部分は共通クラスを作る様にします。
そこで質問があります。
1 exeが小さくなると処理速度が上がるものでしょうか?
2 共通部分をDLL化した時、DLLの容量が大きいと処理速度が低下しますか?又はメモリが増える???
3 ユーザーコントロールに実装(INSERT、DELETEなど)を持たせるのは良くない事でしょうか?
  ビジネスロジックはFORM側に持たせるべきでしょうか?

お忙しいとは思いますがアドバイスの程、宜しくお願いします。
引用返信 編集キー/
■35161 / inTopicNo.2)  Re[1]: exeファイルの大きさと処理速度について
□投稿者/ よねKEN (321回)-(2009/04/21(Tue) 13:43:10)
No35157 (めぐ さん) に返信
> 10Mを超えるEXEがあります。
> 理由はDATASETをやたら貼り付けている事が原因かな?と思っています。
> 処理速度が非常に重く(FORMを開く時、検索する時)、新たに作り直す事となりました。(処理速度アップが目的です)

原因を想像で決めるのでなく、実行時間等を計測してまず処理が遅い箇所を特定しましょう。
どこが遅いのかの特定をして改善しないと良好な結果は得られないでしょう。

> そこで質問があります。
> 1 exeが小さくなると処理速度が上がるものでしょうか?

exeのサイズと処理速度に因果関係はあまりありません。
下手な作りになっている場合、無駄なコードがたくさんあるために、
結果としてexeが大きいということはあるかもしれません。

元々の作りが適切な作りである場合、パフォーマンスチューニングのために改造すると
exeサイズが大きくなることもあります。(キャッシングのためのコードを入れたりする場合)

> 2 共通部分をDLL化した時、DLLの容量が大きいと処理速度が低下しますか?又はメモリが増える???

よっぽどシビアな速度要求がある場合でなければ、気にする必要はないと思います。

> 3 ユーザーコントロールに実装(INSERT、DELETEなど)を持たせるのは良くない事でしょうか?
>   ビジネスロジックはFORM側に持たせるべきでしょうか?

ユーザコントロールもフォームもUI制御を行う場所ですので、
どちらもビジネスロジックを書くのは適切ではないと思います。

引用返信 編集キー/
■35163 / inTopicNo.3)  Re[1]: exeファイルの大きさと処理速度について
□投稿者/ .SHO (801回)-(2009/04/21(Tue) 13:48:31)
> 1 exeが小さくなると処理速度が上がるものでしょうか?

上がりません。
引用返信 編集キー/
■35165 / inTopicNo.4)  Re[2]: exeファイルの大きさと処理速度について
□投稿者/ 倉田 有大 (577回)-(2009/04/21(Tue) 13:56:34)
No35163 (.SHO さん) に返信
>>1 exeが小さくなると処理速度が上がるものでしょうか?
>
> 上がりません。

起動速度ぐらいはあがるかも。
10Mのexeかー
私の作ったやつで一番でかいやつでも、DLLあわせて300KB強かな。

>3 ユーザーコントロールに実装(INSERT、DELETEなど)を持たせるのは良くない事でしょうか?
  ビジネスロジックはFORM側に持たせるべきでしょうか?

ケースバイケースだと思いますが、僕なら、DBを操作する専用のクラスつくるっす。
引用返信 編集キー/
■35169 / inTopicNo.5)  Re[1]: exeファイルの大きさと処理速度について
□投稿者/ はつね (1005回)-(2009/04/21(Tue) 14:53:25)
はつね さんの Web サイト
No35157 (めぐ さん) に返信
> 1 exeが小さくなると処理速度が上がるものでしょうか?

メモリが充分あれば上がりませんが、実メモリ不足になってメモリスワップなどが発生するようになれば格段に遅くなります。


> 2 共通部分をDLL化した時、DLLの容量が大きいと処理速度が低下しますか?又はメモリが増える???

DLLにしても1と同じ。


> 3 ユーザーコントロールに実装(INSERT、DELETEなど)を持たせるのは良くない事でしょうか?
>   ビジネスロジックはFORM側に持たせるべきでしょうか?

フォーム側には必須チェックやフォーム上のデータだけでチェックできるようなものを除き、せめて別クラスファイルとしてフォームクラスファイルとは別ファイルにした方がいいでしょう(構造化プログラミング的にも)。
別クラスライブラリにするかWebサービスにするかなどはケースバイケースだと思いますが、どっちかっていうとこっちの方向にシフトしつつあると思います。



引用返信 編集キー/
■35187 / inTopicNo.6)  Re[2]: exeファイルの大きさと処理速度について
□投稿者/ めぐ (9回)-(2009/04/21(Tue) 17:48:37)
皆様、アドバイス有難う御座いました。

まずは実行時間等を計測して処理が遅い箇所を特定します。
それから、クラス設計をもう一度考えたいと思います。
解決済み
引用返信 編集キー/
■35194 / inTopicNo.7)  Re[1]: exeファイルの大きさと処理速度について
□投稿者/ Jitta on the way (303回)-(2009/04/21(Tue) 19:39:51)
No35157 (めぐ さん) に返信


> DATASETを使用せず、DATATABLEを使用します。

ちょっと乱暴ですが、DataSet はデータベースのコピーだと考えてください。これのメモリーが大きいとは思いませんが、一つで十分だと思います。


> 似たような部分は共通クラスを作る様にします。

「似たような部分」ではなく、「同じ働き」でまとめます。
同じ働きを見つけるのは、経験が必要です。
解決済み
引用返信 編集キー/
■35199 / inTopicNo.8)  Re[1]: exeファイルの大きさと処理速度について
□投稿者/ 読者 (4回)-(2009/04/21(Tue) 23:49:41)
No35157 (めぐ さん) に返信
> 10Mを超えるEXEがあります。
単にデバッグ版だった…って事はありませんか?

# 一応、確認確認。。。
解決済み
引用返信 編集キー/
■35200 / inTopicNo.9)  Re[2]: exeファイルの大きさと処理速度について
□投稿者/ やじゅ (978回)-(2009/04/22(Wed) 00:03:58)
やじゅ さんの Web サイト
> ■No35157 (めぐ さん) に返信
>10Mを超えるEXEがあります。

NETZ 実行ファイルを圧縮するツール
http://madebits.com/netz/index.php

実行ファイル(.exe .dll)を実行可能なままに圧縮するソフトです。
有名なものとして「UPX」がありますが、UPXは.NETアプリには対応していません。

圧縮して小さい実行ファイルにすることにより、より速くロードすることが可能になります。
http://blog.yaju.jp/200703/article_9.html
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -