- ベストアンサー
例外処理のフローチャートの記述方法
例外処理のフローチャートを記述したいのですが、良い記述方法はないでしょうか? try、catch、throwの記述方法等教えていただければ幸いです。 #JISで決められている図でtry、catch、throwに該当する図はないと思います。 #わかりやすければ、独自の図などでも構いませんので、アドバイスお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
普通オブジェクト指向言語にフローは使わないんですけど、どうしてもフローで書く必要があるのならってことで。 tryブロックとctachブロックを「開いたサブルーチン」として捉えればブロックをサブルーチン記号で記述できます。 throwは「関数からの脱出」であることにかわりはありませんからreturnと同じ書き方でいいのではないでしょうか。 throwとcatchの関係はフローで書き表すことが困難(フローは関数ないロジックを記述するもので、関数間の関連を記述するのに向いていないため)ですからモジュール(関数)関連図などを別途要するべきでしょう。
その他の回答 (1)
- a-kuma
- ベストアンサー率50% (1122/2211)
フローチャートでは、例外にあたる記法は無いですね。 また、フローチャートなんかを使うところを見ると、それを読み書きする人たちは、あまり、 オブジェクト指向に馴染みがないのでしょうね。 「例外の送出」は、つまるところ「大域ジャンプ」ですから、フローチャートに慣れた人たちが 読むのであれば、throw を goto で、catch をラベルで書くのが分かりよいかも。 宛先のラベルの替わりに例外クラスを記述するようにして。 try だけは、書きようが無いですね。私は、コメント扱いにするのが良いと思います。 ひとつの処理ブロックとして別紙に書き表すというのでも良いのかもしれませんが、 try ブロックを狭く設計されちゃうと、却って読みづらくなりそうなので。
お礼
ご回答、ありがとうございました。 参考にさせて頂きます。 なんかバカにされているような気がするの言っておきますが、オブジェクト指向に 馴染みがないわけではありません!フローチャートを書くことは仕様で決まってい るので。。。
お礼
返事が遅くなって申し訳ありません。 大変参考になりました。 ありがとうございます。 # 確かに普通オブジェクト指向言語にフローは使わないですよね # 書かないといけない状況なんですが、歯がゆい思いをしています。