2012-04-23 10 views

答えて

5

ソフトウェア開発プロセスの早い段階で、バグが見つかる早ければ早いほど簡単です。通常、コンパイラのエラーや警告は、問題のあるコードの行を正確に示しますが、実行時にバグを見つけるのは、通常、はるかに時間がかかり、面倒なプロセスになります。さらに、しばらくの間バグが表示されない場合もあります(潜在的なバグ)ので、将来お客様のサポートを提供したり、ソフトウェアアップデートをバグ修正、評判の喪失などを処理します。

2

基本的に、コンパイルするたびにすべてのコードが実行されるため、検出されるエラーはコンパイルごとに自動的に検出されます。

実行時エラーを検出すると、エラーを検出するためにすべてのコードを実行する必要があります。条件付きで実行される分岐が多いコードの場合は、特に注意が必要です。また、エラーの正確な位置を特定することは非常に難しいことがあります。

最終的には、できるだけ早くバグを見つけることになるので、コードが新鮮である間に修正することができます。

1

また、@Paul Rによると、コンパイルエラーは通知するのが簡単であり(コードとボイラーをコンパイルするだけです)、ランタイムエラーはクラッシュする可能性のあるユースケースのシナリオに特有のものですあなたのシステムが展開されている間。影響を考えてみてください。

1

エラーには、コンパイル時間と実行時間の2種類があります。できれば、コンパイル時にエラーを発生させたい場合は、診断と修正がはるかに簡単であるためです。

基本的にコンパイル時エラーとは、構文エラー(typo)や型エラー(間違った方法での呼び出しや使用)などが原因でコードを構築できず、コンパイラが続行できないことを意味します。コンパイラは最近、潜在的なランタイムエラーでさえ、すべてのタイプのエラーを識別するために最善を尽くしていますが、デバッグプロセス中ではなくコードを書くときにこれらの問題を修正するのがずっと安く時間がかかります。通常、初歩的な「実行時」分析を行うことができるコンパイラでは、警告が表示されます。これは、コンパイラがコードがジャックアップされていると判断する方法です。それでも警告のシナリオで構築されますが、警告は常にあなたが支払うべきものです。

実行時エラーが発生するのは、コードは正しいかもしれませんが、ロジックがコンパイルされていないか、ビルド中にコードに入るパラメータ(ユーザー入力を考えて)を知る手段がないためです。実行時エラーの例としては、無限ループ、範囲外のエラー、型エラー(数値の入力時にユーザーが文字列を入力すると考える)などがあります。

最終行は、実行後にエラーが発生したときにエラーが発生した場合にはいつでも、コードをよりきれいに、より効果的に保つことができるということです。私はこれが役立つことを願っています:)

関連する問題