C#で例外処理の煩雑な実装を何とかする

      2016/05/24

概要

ネット上にあるサンプルでは、よく例外が省略されている事があります。
しかし、あまり例外の扱い方で参考になる実装はなかったりします。
目的が達しているからと、記載されている内容を過信し、そのまま転用してしまうと、後々トラブルになる可能性が高まります。
又、ライブラリなどの提供側を作る際にも同じ事が当てはまり、利用されるシーンを限定できないため、さらに想定外はつきものになります。
いつどこで発生した例外かをできるだけ正確に把握して完成度を上げたいところですが、発生状況を特定するのはなかなか難しいものです。
そもそも、例外は起きない様に実装すべきであり、Debug.Assert() や IFで動作条件をきっちり処理すべきことです。

プログラムを書く上で、必要なクラスやメソッドを呼び出す中で
どうしても例外処理は必要になってきます。
ここではライブラリ実装や一般プログラムを作るうえで、 例外構文としてよく使う try – catch における
入れておくと、あとあと助かる、お得な実装を紹介します。

実装

.NET 4.0 以上 C# のコード例です。
Intellisense上で 扱いやすいように、コードのコメントに使用例を付けました。
実装サンプルは コメントにあります。

 

 - 未分類