1

ファイルを上書きする方法を決定するために「ユーザーオプション」をサポートする必要があるプログラムがあります。ユーザーは「オプション」から選択できます。これにより、いくつかの組み合わせが可能になり、可能なすべての「IF ... ELSEステートメント」をコーディングするのが難しくなります。 、この複雑な結果評価はコーディングするのが難しく、長くなりすぎて気が狂いそうになります!

私はこれをある種の「解析」で解決して、可能なすべての結果をより速く、より有機的な方法で評価し、IF ... ELSE ブロックの長いチェーンを使用しないようにしています。

これが私のプログラムオプションにあるものです:

http://i.stack.imgur.com/Ggpbl.png

例: ユーザーがファイルの上書きを選択し、オプション「ファイル サイズ」を選択し、このオプションの基準として ">=" を選択し、さらに「ファイル日付」と「<=」を選択し、「OR」を選択したとします。すべてのオプションを選択すると、「FILE >= x」または「FILE DATE <= x」のような結果になります。

上記のスクリーン ショットのオプションを使用すると、ユーザーはあらゆる種類の可能な論理オプションを作成し、"OR" と "AND" を使用してそれらを組み合わせることができます。また、">、<、>=、<=、=、<> を選択することもできます。 "。

この小さな画面の背後にある複雑さは非常に大きく、私はこれに取り組む方法を研究してきました.ラムダ式とバイナリツリーと呼ばれるものについて聞いたことがありますが、それが私の問題に当てはまるかどうかはわかりません.少なくとも誰かが私を正しい方向に向けてくれます。答えを探し回るときに「問題」を正しく分類する方法さえわかりません:)

よろしくお願いします!

4

1 に答える 1