0

質問自体から始めます。

前方方向の if ステートメントとなるメソッド名として単語を教えてもらえますか?

質問の説明は類推から始めます。

'add' is to 'plus' as 'if' is to what?

次のように表現するとよいでしょう。

add 10 to 5         => 5 + 10
if true then action => action (?) true [OR] true (?) action

上記の [OR] の理由は、意図の方向性によるものです。

add 10 to 5         => 5 + 10
     |----^            ^---|

if true then action => action (?) true [OR] true (?) action
    ^----------|         |---------^         ^---------|

方向性に関して何が最も理にかなっているのかわからない。これを関数型プログラミングに関連付ける理由は、次のような拡張メソッドを C# で作成したいからです。

bool.[FuncName](action)

言語内では、上記の「5 + 10」の例のように、左から右に読む方が簡単だと思います。したがって、私のメソッドはブール値を拡張し、C# アクションとしてアクションを必要とします。このメソッドに名前を付けるための正しい名前を探しています。

他の方向が必要な場合は、次のようになります。

action.[FuncName](bool)

コードでは (拡張メソッドをこのように記述した場合):

(new Action(TestMethod)).If(testBool);

しかし、それはあなたが自然に考える方法とは逆です。「右側の testBool が true の場合、左側のアクション TestMethod を実行する」ということです。「If」という言葉は、一般的に「この条件が true の場合に、このアクションが発生する」という意味であるため、意味があります。しかし、単語または単語を if ステートメントの順方向バージョンにしたいのです。

私が考えた最も近いもの:

testBool.WhenTrue(new Action(TestMethod));

皆さんはどう思いますか?

4

0 に答える 0