プログラムの流れを図で表す方法その1:フローチャート/アクティビティ図...
DESCRIPTION
フローチャートって何なのって、こんなのです。プログラムの説明が少しでも円滑になれば幸いです。TRANSCRIPT
![Page 1: プログラムの流れを図で表す方法その1:フローチャート/アクティビティ図](https://reader036.vdocuments.pub/reader036/viewer/2022082320/548b3d7ab479594e4d8b457d/html5/thumbnails/1.jpg)
プログラムの流れを図で表す方法その 1
フローチャート /アクティビティ図
アクティビティ図と混ぜた自己流です
2014-06-09Katsuhiro MORISHITA森下 功啓
![Page 2: プログラムの流れを図で表す方法その1:フローチャート/アクティビティ図](https://reader036.vdocuments.pub/reader036/viewer/2022082320/548b3d7ab479594e4d8b457d/html5/thumbnails/2.jpg)
フローチャートの見た目
![Page 3: プログラムの流れを図で表す方法その1:フローチャート/アクティビティ図](https://reader036.vdocuments.pub/reader036/viewer/2022082320/548b3d7ab479594e4d8b457d/html5/thumbnails/3.jpg)
フローチャートとは
• プログラムの流れを図にしたもの• 特に、1つのプログラムについて、処理の流れを表す
![Page 4: プログラムの流れを図で表す方法その1:フローチャート/アクティビティ図](https://reader036.vdocuments.pub/reader036/viewer/2022082320/548b3d7ab479594e4d8b457d/html5/thumbnails/4.jpg)
フローチャートの限界
• プログラミング言語の表現力を圧倒的に下回る表現しかできない
![Page 5: プログラムの流れを図で表す方法その1:フローチャート/アクティビティ図](https://reader036.vdocuments.pub/reader036/viewer/2022082320/548b3d7ab479594e4d8b457d/html5/thumbnails/5.jpg)
伝統的なフローチャートの問題点
• 記述できない–割り込み–並列処理–状態遷移、メッセージのやりとり、クラス定義
• そもそも、データ構造を記述できない–ハッシュテーブルなどどうする?
![Page 6: プログラムの流れを図で表す方法その1:フローチャート/アクティビティ図](https://reader036.vdocuments.pub/reader036/viewer/2022082320/548b3d7ab479594e4d8b457d/html5/thumbnails/6.jpg)
フローチャートの存在意義• プログラムの処理の流れを他人(将来の己を含む)へ説明
• 頭の整理がつかない場合に作る
![Page 7: プログラムの流れを図で表す方法その1:フローチャート/アクティビティ図](https://reader036.vdocuments.pub/reader036/viewer/2022082320/548b3d7ab479594e4d8b457d/html5/thumbnails/7.jpg)
プログラムを表現する他の手段• プログラムの流れを示す、アクティビティ図
• システム間のメッセージのやり取りを表すシーケンス図
• オブジェクトの状態遷移を表す状態遷移図
• クラスオブジェクトを表すクラス図
説明対象をプログラムの流れに絞って、アクティビティ図を使おう!
* UMLで検索してみてください。
![Page 8: プログラムの流れを図で表す方法その1:フローチャート/アクティビティ図](https://reader036.vdocuments.pub/reader036/viewer/2022082320/548b3d7ab479594e4d8b457d/html5/thumbnails/8.jpg)
流れを説明するのに必須な記号• スタート• 処理内容• 分岐・合流• 終了
4つだけ
処理内容
条件は枝に書く
![Page 9: プログラムの流れを図で表す方法その1:フローチャート/アクティビティ図](https://reader036.vdocuments.pub/reader036/viewer/2022082320/548b3d7ab479594e4d8b457d/html5/thumbnails/9.jpg)
ルール
• 始まりと終わりがある• 終わり方はいくつか有ってもいい
![Page 10: プログラムの流れを図で表す方法その1:フローチャート/アクティビティ図](https://reader036.vdocuments.pub/reader036/viewer/2022082320/548b3d7ab479594e4d8b457d/html5/thumbnails/10.jpg)
うまくフローチャートを書くコツ
• 作図する目的を意識• 記述の粒度を意識• 関数を一つの箱に入れる• 関数群も一つの箱に入れても OK(かも)• 細かく書くのは無駄–プログラムを書いた方が速い–細かい実装方法はプログラマに任せる
![Page 11: プログラムの流れを図で表す方法その1:フローチャート/アクティビティ図](https://reader036.vdocuments.pub/reader036/viewer/2022082320/548b3d7ab479594e4d8b457d/html5/thumbnails/11.jpg)
Fin.