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

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

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

Re[2]: プロパティについて


(過去ログ 80 を表示中)

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

■47413 / inTopicNo.1)  プロパティについて
  
□投稿者/ teru (1回)-(2010/03/02(Tue) 02:03:36)

分類:[C#] 

こんな質問で申し訳ないのですが、気になったので気になったので質問させていただきます。

私はプロパティを記述する際になんとなくコードで記述していました。
ex) テキストボックス.ReadOnly = true;

大体Form_Loadイベントで上記の様に初期処理を行っていたのですがふと気になりました。

これはコントロールのプロパティ画面で設定してしまった方がパフォーマンス等いいのでしょうか?

コードで記述するメリットはあるんでしょうか?

あるとしたら動的に生成する場合だけなんでしょうか?

無駄にコードが長くなってしまう気がして気になってしまいました。

よろしくお願いします。

引用返信 編集キー/
■47421 / inTopicNo.2)  Re[1]: プロパティについて
□投稿者/ 自作 (20回)-(2010/03/02(Tue) 10:55:32)
No47413 (teru さん) に返信
> 気になったので気になったので
2回言うほど重要ですか。。。

# 普段、VB環境の開発なので細かい点で間違ってたら読み替えてください。
# VBとC#環境で常識が違う場合は、この書込みは見当はずれな内容となります
# ことをご了承下さい。
ソリューションエクスプローラ上部のアイコンで[すべてのファイルを表示]
にしてください。
Desiner.cs というキーワードが付いたファイルをダブルクリックして表示して
ください。デザイン画面(コントロールのプロパティ画面)で設定した値はここに
自動でコーディングされています。
# 違う環境でコーディングしたプロジェクトをUpgradeした場合など、
# 環境の違いで見つからない場合は、コントロール名とかでソリューション
# 全体を検索してみてください。

このため一般に、プロパティ値を設定するコードを書けば、2回プロパティを設定
することになります。なので理論上は書かない方がパフォーマンスが良いと予想
できます。
しかし、実際に処理時間を計測すると誤差の範囲です。常識はずれてたくさんの
設定をするなり、別の視点から解決した方が良い様な設定をしない限り、人間が
そのパフォーマンスの差を感じることはありません。

逆に、プロパティ値を設定するコードを書く利点はソースコード管理上、何点か
考えられます。
まず、VB6.0 時代の大抵のプログラマがフォームのロードイベントで初期化する
コードの存在を認識してくれます。今回のように、自動で書かれるコードの存在を
知らないプログラマでも、フォームのロードに書いてあれば見つけてくれます。
# .NET になってからは上級者の多くが自動でコーディングされる InitializeComponent
# 近辺から自作関数を呼び出して初期化するようになったと感じていますが。
そして、自動で書かれるコードは、デザイン画面の変更により、丸々順番が
変わったりします。つまり、変更してない部分で差分が出やすいです。
また、掲示板などで説明する側に回れば分かると思いますが、他人にテキスト
ベースで説明する時に便利です。自動で書かれるコードは、編集したらデザイン
画面がおかしくなっても不思議でないので、編集しないのが原則ですし。
そういえば、デザイン画面で設定した内容を覚えていない場合も多いですね。

以上のソースコード管理上有利と考える面から、私はプロパティ値を設定する
コードを書く方を推奨しています。
引用返信 編集キー/
■47433 / inTopicNo.3)  Re[2]: プロパティについて
□投稿者/ teru (2回)-(2010/03/02(Tue) 14:55:30)
自作さん返信ありがとうございます。

これからもコードで記入するようにしたいと思います!

解決済み
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -