気楽なソフト工房

プログラミングについていろいろな記事を書いています。



mykonos2008

Author:mykonos2008
システムエンジニアとして働いている30代の会社員です。
仕事や趣味でプログラムを書いている方の役に立つ記事を書いていきたいと思っています。
ご意見、ご感想はこちらまで
If you are an english speaker,Please visit my english blog.

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
Visual Studioで開発をしていて、クラスやコントロールを新規追加すると、
たくさんのusing句が挿入された状態でファイルが作成されます。

そして、コーディングを終えてそれらのusing句は使わないで終わってしまうケースも
結構あったりします。

Visual Studioにはこれら未使用のusing句を自動的に削除してくれる便利な機能が備わっていますが、
では、これをうっかりやり忘れたら何が起こるのでしょうか?

プログラムが余計なメモリを使用して遅くなったりするのでしょうか?
ふと気になって調べて見ました。

まず、結論から言いますと、「未使用のusing句」は実行時には何の影響も与えません。

不要なusing句が含まれていようと含まれていなくても、コンパイルの結果、生成されるアセンブリに違いはありません。
コンパイルの結果、生成される中間コードにはusing句に該当する部分は全く生成されないからです。
ですので、不要なusing句があるからと言って、プログラムのパフォーマンスが劣化したりすることはないのです。

では何故、不要なusing句を削除した方が良いのでしょうか?

いくつか理由があります。

まず、1つ目は、当たり前過ぎるのですが、不要なusing句が無いほうがコードが見易いということです。
不要なusing句が無ければそのコードがどのNamespaceを使用しているか一見して分かるようになります。

2つ目は、コーディング時にインテリセンスが提示してくる型の候補が減ることで、
早く目的の型を発見できるようになることです。これも些細な事ですが、
たくさんコーディングする時は結構、大事かもしれません。

3つ目はコンパイルが早くなることです。コンパイラが型解決をするのに不要な名前空間を探しにいくと、
その分、遅くなってしまいます。これについてはよほどソースの数が多くないと影響が無いと思いますが。。

私の主観では1つ目と2つ目は結構大きい理由になるかなと思います。

ただ、最初に言いましたように不要なusing句が有っても実行時には差が出ないので、
消し忘れたからと言って、後から悩む必要は無いと思います。

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック

http://csfun.blog49.fc2.com/tb.php/83-bb78db6e

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。