タグ

styleとerrorに関するkiyo_hikoのブックマーク (2)

  • エラーメッセージは 2W1H がいいんじゃないか

    良くあるダメなエラーメッセージ エラーが起きたときは、以下のようにエラーメッセージをどこかしらに出力すると思います。 $c->log->error('something wrong!'); ただ、このエラーメッセージって、実際に発生したときには意味がわからないことが多いのです。 $c->log->error('error!'); 気でこういう「error!」とだけ吐くメッセージだと、エラーが起きたことしか伝わってきません。程度の差はあれ意味のわからないエラーメッセージはこの世にあふれているかと思います。 機械的なエラー情報 そういうわけで、たいていは Exception クラスや Logger クラスで多くの補助が受けられるようになっていると思います。 発生時刻 発生場所 stack trace 変数の状態 ただ、このような機械的な情報だけだと、結局、運用上は対応が難しい場面ってのが多か

    エラーメッセージは 2W1H がいいんじゃないか
  • 防御的プログラミング・例外(2) - Strategic Choice

    例外には継承と共通する特徴があります。それは、使いようによっては複雑さを軽減できますが、軽率な使い方をするとコードを理解することはほぼ不可能になってしまうことです。そこで、例外の利点を理解し、例外につきものの問題を避けるためのアドバイスを紹介します。例外の使用法◆無視すべきでないエラーは例外を使用してプログラムの他の部分に伝える例外の最大の利点は、無視できないような方法でエラー状態を知らせることです。他の方法でエラーを処理すると、コードを通じてエラー状態を伝達しても、気付かれない可能性があります。例外を使用すれば、そのような可能性がなくなります。◆当に例外的な状況でのみ例外をスローする例外は、「当に例外的な状況」、つまり他のコーディングプラクティスでは対処できない状況のために残しておきます。例外は、予想外の状況に対処する強力な手段と、コードの複雑さの増大とのトレードオフを考慮しなければ

    kiyo_hiko
    kiyo_hiko 2012/02/27
    「プログラミング原理のほとんどは、言語の種類ではなく、言語を使用する方法に依存」「言語の「中で」プログラミングしているプログラマは、自分の考えを言語が直接サポートしている構造だけに限定してしまいます」
  • 1