- PR -

VS.NETのパフォーマンスについて

1
投稿者投稿内容
Hodgkin
常連さん
会議室デビュー日: 2003/07/18
投稿数: 34
投稿日時: 2004-10-21 20:14
いつもお世話になっています。

開発環境:VS.2002
fWK :.NET Framework1.0 SP1
その他 :NUnit2.2

上記の環境で開発を行なっております。
そこで、クラス数の多いプロジェクトを作成したところVS.NETのレスポンスが
格段に悪くなりました。
例えば、クラスの追加に40秒前後
    コピーするための範囲指定に20秒程度
大体、クラス数が500個を超えた辺りから兆候が現れました。
(現在は、1000個くらい)
現在、ソースコードとテストコードを同じプロジェクトに置いているのですが、
これを別のプロジェクト(同じソリューション内の)に分けても効果はありませんでした。
どなたか、妙案はないでしょうか?

もちろん、プロジェクトの粒度を見直したら・・・っと言うご指摘を受けると思いますが
現状の設計を変えることは出来ません。

VS.NETだと、ソースコードに修正が入るたびに構文のチェックが走ります。
ここら辺りがボトルネックになっているのかなとも思いますが、設定の変更個所が
わからず、現在は秀丸で開発しています。

最後にマシンスペックですが、
CPU:Pen3 1GHz
メモリ:512MB
OS :Win2000Pro
ただ、下記のスペックのサーバマシンでもさほどパフォーマンスの違いはありませんでした。
CPU:Pen4 3.2GHz
メモリ:1024MB
OS :Win2000Server

何卒、よろしくお願い致します。
らぶま
常連さん
会議室デビュー日: 2004/10/21
投稿数: 32
投稿日時: 2004-10-21 20:50
らぶまと申します。

憶測ですが。
クラス数というよりは、ソリューションファイルの問題ではないでしょうか。
あまりに巨大なソリューションだと、管理下にあるプロジェクトのソースファイル等にアクセスして表示するための負荷が大きくなりすぎる気がします。
したがって、プロジェクトを変更しなくても、関連あるプロジェクトのみをまとめたソリューション(開発コードとテストコードとか)をいくつか作り、必要なソリューションのみを扱うようにすれば多少は改善されると思います。

いかがでしょうか?
Hodgkin
常連さん
会議室デビュー日: 2003/07/18
投稿数: 34
投稿日時: 2004-10-21 21:11
いつもお世話になっております。

らぶま様ありがとうございます。

らぶま様の仰る通り、ソリューションファイルの問題の気がしてきました。
ただ、既に関連しないプロジェクトは別のソリューションに移してあります。
(関連しないプロジェクトの開発に影響が出たので・・・)

やはり、プロジェクトの粒度を見直しソリューションのサイズを小さくする以外に
方法はないんですかね。

ソースコードに修正が入るたび行なわれる構文のチェックを行なわないようにする設定等、
ご存知ないでしょうか?

よろしくお願い致します。
らぶま
常連さん
会議室デビュー日: 2004/10/21
投稿数: 32
投稿日時: 2004-10-21 22:22
らぶまです。

調べてみたら、以下の記述がありました。
(MSDNより)

「Visual Basic のコンパイラ エラーに付けられる青い波線は、エラーを修正するとすぐに消えます。現状では波線の表示機能を無効にすることはできませんが、Visual Studio .NET の今後のバージョンで可能になる予定です。」


http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vsintro7/html/vxgrfeditorconveniencecommandsfeatures.asp

上がいつの文書かよく分かりませんが、少なくともNET2002では自動構文チェック機能を無効にすることはできないようですね。

無念ですが、他の方法を考えたほうが早いかもしれません。
Hodgkin
常連さん
会議室デビュー日: 2003/07/18
投稿数: 34
投稿日時: 2004-10-22 11:41
いつもお世話になっております。

わざわざ調べていただきありがとうございます。
だめなんですね。自動構文チェック機能を無効化は・・・
しょうがないので、秀丸での開発を続けます。VS.NETはコンパイラとしてのみの使用で・・・。
NAntのスキルがあれば、VS.NETを使用しないで開発出来るんですけどね。スキル不足で。

根本的にこれじゃ統合環境を使って開発している意味がないですよね^_^;
今回のようにVS.NETの機能がありすぎて、結果としてパフォーマンスが出ないのでは
本末転倒ですよね。(自分の設計が悪いのを棚に上げてしまっていますが^_^;)

無念です。
やっぱり行き着くところは秀丸ですね。


[ メッセージ編集済み 編集者: Hodgkin 編集日時 2004-10-23 15:55 ]
1

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