私はObjective-Cのバックグラウンドを持っており、デリゲートを含むVB.NETを作成しています。Worker
いくつかのタスクを実行するクラスがあります。このクラスのプロパティの1つはILogger
オブジェクトであり、ログファイルに追加するためのメソッドがあります。(Worker
オブジェクトをロギングから切り離して、GUIで処理するようにしたいです。)Objective-Cでは、次のように宣言できます。
@property (nonatomic, strong) id<LoggingDelegate> logger;
次に、次のような行をコードに振りかけます
[logger appendToLog:@"Beginning polarity reversal..."];
Objective-Cでは、logger
これが機能するために実際にオブジェクトに設定する必要はありません。null参照(Objective-Cでは「nil」)の場合、appendToLog:
メッセージはランタイムによって黙って無視されます。
VB.NETでは、次のようなことができます。
Public Property logger As ILogger
と
logger.AppendText("Beginning polarity reversal...")
ただし、もちろん、logger
これを機能させるには、実際にはオブジェクトに設定する必要があります。ワーカーにロガーオブジェクトがアタッチされていない場合を処理する慣用的な方法は何ですか?(より一般的には、VB.NETでのデリゲートパターンの実装は慣用的ですか?)