に応じて、私はと呼ばれるいずれかのGUIから、または非グラフィカル環境「伝える」ための最も便利なベストプラクティスの方法は何ですか(バッチモード)
変更コードの動作状況
を形成することができるクラスを持っていますコードのGUI関連部分は、バッチモードで実行されても実行されません。
私は
public MyMethod()
{
[@TAG: DOTHIS_ONLY_IF_GUIMODE]
ShowPanels();
....
}
のようなものを考えるとGUI_MODE_ACTIVATEDは、プログラムが
から呼び出された場所に応じて、私は場合は醜いトレースを避けたい、どこかのランタイム上でtrueまたはfalseに設定されます/他のものが私のコード全体に散らばっています。
私の小さな親指は私にAOPが行く方法を教えてくれます。(もっと簡単な方法を見つけたら、私はそれに行きます)
これを行うための最も簡単で簡単な方法は何ですか?
更新: 最も貢献者が指摘したように、ビジネスコードからGUIコードを分離することは経験則がある、しかし、私はまだNO GUIがに関与している場合でも、これを行う方法を知ることに興味を持っています(すなわち、バッチモードで実行したときに実行しないコードのGUI関連の部品を「伝える」ための最も便利なベストプラクティスの方法は何例えば、2つの異なる環境のための2つの異なるバッチモード)
パーフェクト!私はすでに何らかの形で(ShowPanelsメソッドが実際にイベントを発生させています)、何らかの理由でバッチモードでそのイベントを購読していないときにNullPointer例外を取得するので、そのオプションの有効性が疑われました。コードをより詳細にチェックします。 –
それを呼び出す前にnullのイベントを確認してください – n8wrl
これはまさに私が提案しようと考えていたものです。 – mlibby