命令 または 手続き型 プログラミングパラダイムで実装されたモデリングソフトウェアの場合、フローチャート、プロセス図などがあります。
オブジェクト指向 の場合、UMLクラス図、オブジェクト図、状態図などがあります。
関数型プログラミング で実装されたUMLダイアグラムに適した設計ソフトウェアはありますか?
はいといいえ !
MLアクティビティ図 は、制御フローとオブジェクトフローをモデル化します。どちらも、個々の関数、関数構成、関数パイプラインをモデル化するのに非常に実用的です。
標準のUMLでは、私の知る限り 高次関数 を表す簡単な方法はありません。
おそらく、そこにあるUMLの第一人者は invocation action を使用して、関数型のオブジェクトに対応するファンクターを呼び出す回避策を見つけることができます。でも、それができても理解しにくいと思います。
注:同じ制限が非UMLモデルでも発生することに注意してください。データフロー(DFD)と機能分解モデル(SADT)は常にアクティビティを修正済みと見なします。結局のところ、2つの関数を接続する矢印と、新しい関数を提供する矢印の違いをどのようにしたらわかりますか?
実現可能性を理解するために、いくつかのアクティビティ図の例を見てください。これらは手順的なアプローチを念頭に置いて設計されていますが、機能的な方法でそれらを実装する方法を想像してみてください。驚かれることでしょう。 。
不足している高次のアクティビティについては、何をアドバイスすればよいかわかりません。おそらく、カスタマイズされたUMLプロファイルを作成して、アクションの結果として生成されたアクションを視覚的に表現できるようにしますか?