私は、論理表現の形式とJavaコードの間で本質的に変換するかなり複雑な変換モジュールを書いています。これは、すべて互いに分離されているいくつかのクラスにまたがっています。
私の問題は、たとえば変数名に挿入する必要のある、かなり広範なキーワードのセットを追跡する必要があることです。これらのキーワードは、モジュール内のすべてのクラスがアクセスでき、簡単に変更できる必要があります。
設計に関しては、グローバルの使用は危険信号であることを理解していますが、この場合、上記のキーワードへの静的アクセスを提供するだけのクラスを作成することは許容されますか?例えば:
public final class KeyWords {
public static final String SELF = "self";
public static final String RESULT = "callResult";
// etc
}
私自身の考えでは、単純なconfigクラスのように機能するでしょう。データはかなり明確に定義されており、重要なことに、実行時に変更されないため、これは、たとえばメディエーターを使用したり、メソッド呼び出し間で他のバケットクラスを渡したりするよりもはるかに合理的です。
または、代わりにこれらすべてのキーワードをインターフェイスに配置し、すべてのクラスにこれを継承させる方がよいでしょうか?それはうまくいくかもしれませんが、それはちょうど正しく感じません。