みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

例外処理のフローチャートの記述方法

例外処理のフローチャートを記述したいのですが、良い記述方法はないでしょうか?
try、catch、throwの記述方法等教えていただければ幸いです。

#JISで決められている図でtry、catch、throwに該当する図はないと思います。
#わかりやすければ、独自の図などでも構いませんので、アドバイスお願いします。

投稿日時 - 2002-10-01 00:41:45

QNo.370310

困ってます

質問者が選んだベストアンサー

普通オブジェクト指向言語にフローは使わないんですけど、どうしてもフローで書く必要があるのならってことで。

tryブロックとctachブロックを「開いたサブルーチン」として捉えればブロックをサブルーチン記号で記述できます。
throwは「関数からの脱出」であることにかわりはありませんからreturnと同じ書き方でいいのではないでしょうか。

throwとcatchの関係はフローで書き表すことが困難(フローは関数ないロジックを記述するもので、関数間の関連を記述するのに向いていないため)ですからモジュール(関数)関連図などを別途要するべきでしょう。

投稿日時 - 2002-10-01 01:34:36

お礼

返事が遅くなって申し訳ありません。

大変参考になりました。
ありがとうございます。

# 確かに普通オブジェクト指向言語にフローは使わないですよね
# 書かないといけない状況なんですが、歯がゆい思いをしています。

投稿日時 - 2002-10-20 02:31:04

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

フローチャートでは、例外にあたる記法は無いですね。
また、フローチャートなんかを使うところを見ると、それを読み書きする人たちは、あまり、
オブジェクト指向に馴染みがないのでしょうね。

「例外の送出」は、つまるところ「大域ジャンプ」ですから、フローチャートに慣れた人たちが
読むのであれば、throw を goto で、catch をラベルで書くのが分かりよいかも。
宛先のラベルの替わりに例外クラスを記述するようにして。

try だけは、書きようが無いですね。私は、コメント扱いにするのが良いと思います。

ひとつの処理ブロックとして別紙に書き表すというのでも良いのかもしれませんが、
try ブロックを狭く設計されちゃうと、却って読みづらくなりそうなので。

投稿日時 - 2002-10-01 09:59:54

お礼

ご回答、ありがとうございました。
参考にさせて頂きます。

なんかバカにされているような気がするの言っておきますが、オブジェクト指向に
馴染みがないわけではありません!フローチャートを書くことは仕様で決まってい
るので。。。

投稿日時 - 2002-10-20 02:45:13

あなたにオススメの質問