Delphi 2010 を使用して、モジュールまたはプラグインをサポートするプログラムを作成する必要があります。少し不自然ですが、データファイル/テキスト ファイルを変換するアプリがあるとします。30 の入力形式と、同じ 30 の形式を出力としてサポートします。最初のリリースでは、おそらくこれらの形式のいくつかのみが実装されるでしょう。私の課題は、データ駆動型のプロセス フローが必要だということです。
たとえば、PARSE_FILE ルーチンがあるとします。入力データ ファイル形式が「Format_A」の場合、PARSE_FILE を呼び出すと、PARSE_FILE ルーチンの他の 29 の異なるバージョンとは対照的に、PARSE_FILE_Format_A を使用することを認識している必要があります。
PARSE_FILE は単なる例です。おそらく、LOAD_FILE、GET_DELIMITER、PARSE_FILE などの60 の異なる共通関数を使用する予定ですが、これらの関数のそれぞれは、30 の異なる形式ごとに少し異なります。FORMAT_A を使用してファイルをロードする場合、これらの 60 の異なる共通ルーチンのそれぞれがこれらの 60 のルーチンの適切な「バージョン」を使用するには、どのような手法を使用できますか?
5 つの入力形式から始めて、後で他の形式を追加することに注意してください。したがって、この「マッピング」を一元的に定義する方法が必要です。したがって、これらのルーチンがコード全体で使用されている場合は、ルーチンの適切なバージョンが使用されます。ジェネリック版と呼んでも使えます。