実行するコマンドを含むファイルを読み込む Java プログラムを作成しました (自分で作成した言語で)。コマンドは文字列として読み込まれ、配列に入れられます。これで、「ディスパッチャー」メソッドが配列をループして、コマンドを解釈し、それらに作用するそれぞれのメソッドを呼び出します。
もちろん、これはネストされた if ステートメントの大きなブロックにつながります。
if commandReadIn == this, do that...
if commandReadIn is of type x, get next element,treat next element as argument...
etc.
今はほんの一握りのコマンドしかありませんが、何百ものコマンドを追加したい場合はどうすればよいでしょうか? コードは保守できなくなります。
今、条件付きロジックを完全に取り除くことができるかどうか疑問に思っています。とにかくある時点で文字列を解釈する必要があるため、コマンドパターンはここではあまり役に立たないようです..これは、ネストされた「if」がたくさんあることを意味します。それが不可能な場合、コマンドの追加、編集、または削除を容易にする方法でコマンドとその文法を再構築する最善の方法は何でしょうか?