[解決済み] 例外やエラーコードの規約 [終了しました]。
2022-06-23 11:40:23
質問
昨日、私は同僚と、どのようなエラー報告方法が望ましいかについて熱い議論を交わしていました。主に、アプリケーション層またはモジュール間のエラーを報告するための例外またはエラーコードの使用について議論していました。
エラー報告のために例外を投げるかエラーコードを返すか決定するために、どのようなルールを使用しますか?
どのように解決するのですか?
私は通常、例外を好みます。なぜなら、例外にはより多くの文脈情報があり、(適切に使用された場合)プログラマにエラーをより明確に伝えることができるからです。
一方、エラーコードは例外よりも軽量ですが、保守が困難です。エラーチェックが不用意に省略されることがある。エラーコードは、すべてのエラーコードのカタログを保持し、どのようなエラーが投げられたかを確認するために結果をオンにする必要があるため、保守が困難です。エラーの範囲というのは、ここで役に立ちます。エラーの有無だけに関心があるのなら、チェックはよりシンプルになります(例えば、HRESULTのエラーコードが0以上なら成功、0未満なら失敗です)。開発者がエラーコードをチェックするというプログラム上の強制力がないため、うっかり省略されてしまうことがあるのです。一方、例外を無視することはできません。
要約すると、私はほとんどすべての状況で、エラーコードよりも例外を好みます。
関連
-
[解決済み] Mac OS X で DYLD_LIBRARY_PATH を使ってもいいのでしょうか?また、それを使った動的ライブラリ検索アルゴリズムはどうなっていますか?
-
[解決済み] 言語バインディングとは何ですか?
-
[解決済み] 関数は return 文を1つだけ持つべきですか?
-
[解決済み] セッションとは何ですか?どのように機能するのですか?
-
[解決済み】マジックナンバーとは何ですか、なぜ悪いのですか?[クローズド]
-
[解決済み】並行プログラミングと並列プログラミングの違いは何ですか?
-
[解決済み】Visual BasicやBASICのDIMは何の略ですか?
-
[解決済み】引数かパラメータか?重複
-
[解決済み] TypeとClassの違いは何ですか?
-
[解決済み] さまざまなアプローチやコンセプトを理解するために学ぶべき重要な言語とは?[クローズド]
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Mac OS X で DYLD_LIBRARY_PATH を使ってもいいのでしょうか?また、それを使った動的ライブラリ検索アルゴリズムはどうなっていますか?
-
[解決済み] GUIDは100%一意ですか?
-
[解決済み] メソッド呼び出し元へ複数の値を返す
-
[解決済み] キュアリングと部分適用の違いは何ですか?
-
[解決済み] 点から線分までの最短距離
-
[解決済み】「インターフェースに合わせたプログラム」とはどういう意味ですか?
-
[解決済み】なぜソースファイルの最後に空行を入れることが推奨されるのですか?
-
[解決済み] 不変量とは何ですか?
-
[解決済み] プログラミングにおける "Context "という言葉?[クローズド]
-
[解決済み] スタックオーバーフローを引き起こす最短のコードは何ですか?[クローズド]