0

私は現在、型破りな UML スキルを使ってコードを文書化しています。現在、UML に関する限り、私を困惑させる関数をモデル化しています。

簡単に言えば、この関数はAction, and thisAction runs a statemachine in either blocking or non-blocking fashion (i.e. calls eitherInvoke orBeginInvoke をそれぞれ作成します)。

例えば:

public void MyFunc()
{
    bool dummy_blocking;

    Action my_action = new Action( () => {
        RunSomeStateMachine();
    });

    if( dummy_blocking)
        my_action.BeginInvoke( null, null);
    else
        my_action.Invoke();
}

Create メッセージを使用して を作成しAction、そのActionライフライン呼び出しで (自分自身へ) を呼び出しRunSomeStateMachineますか? それに続いて、alt フラグメントを使用して呼び出しますBeginInvokeか? 周りの詳細は本当に私を困惑させるものです.InvokeActionAction

編集 - これが私の最初の試みの例です:

ここに画像の説明を入力

4

1 に答える 1

0

個人的には、コードをそのように詳細に文書化するつもりはありません。IMHO、誰かがメソッドが何をしているかを正確に知りたい場合は、このメソッドを読むだけで済みます。

より興味深いのは、より高いコンテキストと、ソフトウェアの各部分がどのように連携するかです。このステート マシンをトリガーしているのは誰で、結局何をしているのか? このようなアクションなどは、単なる実装の詳細です。

于 2012-08-22T05:26:40.727 に答える