ゆなこんブログ

ゆなこんぴゅーたー (Yuna Computer) の公式ブログ

必ずOption Explicit Onにする

ベストプラクティス

必ず Option Explicit On にします。

Option Explicit On

ただし、ソースコードに明示はしないで、プロジェクトの設定で On にします。 最新の Visual Studio のプロジェクト設定はデフォルトで On です。

もしプロジェクトの設定が Off になっている場合、以下の記事を参考に On に戻してください。

blog.yuna-computer.com

理由

Option Explicit Off だとコーディング時に、各変数の適用範囲 (スコープ) が分かりづらくなるため、変数名の競合が起きることがあります。 また、既存の変数名を入力ミスしたまま、気づかないことがあります。

暗黙の変数宣言では、変数に正しい型を付けることができません。 Object 型になってしまいます。 そのため実行速度が遅くなり、使用メモリが増えます。 コーディング時の支援も得られないため、開発効率が落ちます。

Option Explicit Off だと、実行時に予期しない動作(そのほぼすべてがエラー)が起こる可能性があります。 Option Explicit On だと、コンパイル時にエラーを見つけることができます。 さらに早く、IDE の支援によりコーディング時にエラーを見つけることができる場合もあります。

Microsoft が Option Explicit On にすることを公式にすすめています。

方法

プロジェクトの設定で、Option Explicit On にします。 個々のファイルには Option Explicit を一切書きません。

常にプロジェクト全体が Option Explicit On の状態になり、一貫性がもてます。 ファイルを追加しても自然と Option Explicit On になります。 これは簡単です。ソースコードが簡潔になります。

その他の方法

Visual Basic コンパイラを直接呼び出している場合、常に -optionexplicit+ オプションを付けてコンパイルします。 (デフォルトで + つまり On 相当です。)

トレードオフ

Option Explicit On にすると、変数を明示的に宣言する必要があるため、その分コーディング量が増えることがあります。 早くにエラーを見つけることができ、デバッグ・エラー修正の労力を減らすことができます。

ほぼすべてのケースにおいて、(節約できるデバッグにかかるコスト)>(コーディング量が増えるコスト)です。

参照