5


0

私はrubyの例外階層(pickaxeとhummingbirdの両方で言及されています)にアクセスすることができますが、それぞれの用語が何を意味するのかについての情報を見つけていないので、どの例外を使うかわかりません。

正しい例外クラスを使用することは重要ですか?

3 Answer


10


あなた自身の例外を作成するときそれは重要です。 重要な注意点の1つは、StandardError(よくある間違い)ではなくExceptionから継承した例外が(引数なしで)レスキューによってキャッチされないことです。


8


"場合によります"。

Rubyの主な問題の1つは、適切な仕様がないことです。 しかし、それは以前より悪化していました。

これは主にスタイルの問題です。あなたのエラーが組み込みの例外クラスの1つでうまく説明できるのなら、それを使ってください。 サブクラスが理にかなっていると思われる場合は、それを使用してください。

それ以外の場合は、http://www.possibility.com/Cpp/CppCodingStandard.html#coeeal [このCコーディング標準からの導き]に従うことを検討してください。

_ _ 非常に手の込んだ例外階層を作成するのは時間の無駄です。 誰も思いやりがなくなり、すべての努力が無駄になります。 代わりに、ライブラリまたはネームスペースごとに1つの例外を作成し、その例外内に例外の種類を示す例外理由を設定します。

たとえば、OSカプセル化ライブラリの場合は、OsencapExceptionという名前の例外を作成します。 _ _


1


いいえ

それどころか、それがあなたにとって問題ではないのであれば、それは一般に他の誰にとっても問題ではありません。 あなたが図書館を書いているなら、あなたはあなたの図書館のユーザーが理解する何かを使うべきですが、それはそれについてです。