0

一部のプロジェクト、特にグラフィックスでの作業では、IDEのデバッグの使用が非常に長くなるため、環境に応じて、プロジェクト自体やコンソールで値を出力するデバッグコードを使用することがあります。しかし、プロジェクトが完了すると、デバッグコードを見つけて削除することが難しくなり、不要なものがポップすると奇妙に見えます。私はまだ学生なので、今から後で、それをどのように管理するかを学ぶ方が良いですか?

検索しても適切な答えが見つかりませんでしたが、いくつかのことを念頭に置いています。

  1. モジュールがテストされたらすぐにコードを削除してください。そうすれば、見つけることが少なくなります。それは機能しますが、モジュールを後で(より高いレベルで)テストする必要がある場合は、削除されたものの範囲ではなく、まだ追加されています。

  2. ifフラグがtrueの場合にのみ実行されるように囲みdebugging、プロジェクトの最終バージョンに保持します。

  3. プロジェクトでデバッグコードを計画し、メソッドとクラスを(可能な場合は)別々に保ち、呼び出しとオブジェクトを消去します。

それを管理する適切な方法は何ですか?

4

2 に答える 2

1

最も簡単な方法は、debuggingフラグを使用することです。

このフラグがコンパイラ定数 (またはハードコードされている) の場合、デバッグが必要な場合と不要な場合は、プロジェクトを再コンパイルする必要があります。

より良い方法は、フラグが構成ファイル/コマンド ライン パラメータの値を使用するようにすることです。これにより、プロジェクトを再コンパイルすることなくデバッグを制御できます。

さらに優れたアプローチは、強力なログ ライブラリ (利用可能な場合) を使用し、その機能を使用することです。利点は、ログに記録する内容、場所、形式をより細かく調整できることです。

于 2012-05-25T12:20:32.483 に答える
0

最善のアプローチは、コード内の変数をデバッグすることです

set isDebugEnabled=true // in case of development server
set isDebugEnabled=false // in case of production server

または、問題を追跡するために本番環境でログを管理することもできますが、開発サーバーで必要とされるほどではありません

var isDebugEnabled=ConfigurationManager.Appsettings["isDebugEnabled"].ToString();
if(Convert.ToBoolean(isDebugEnabled))
{
  Console.log("Log Message");
}

上記のステートメントで Console.Log がサポートされていない場合、window.console を確認することを忘れないでください。例外がスローされるため、次のようになります。

var isDebugEnabled=ConfigurationManager.Appsettings["isDebugEnabled"].ToString();
if(Convert.ToBoolean(isDebugEnabled) && window.Console)
{
  Console.log("Log Message");
}
else
{
  //Follow file logging mechanism.
}
于 2012-05-25T12:49:37.347 に答える