У меня есть несколько методов, которые выполняют один и тот же код установки, а затем немного кода очистки.Материал между изменениями.Я мог бы сделать это так:
void method1()
{
var x = DoSetupStuff();
// Method 1 specific code that uses x
DoCleanupStuff(x);
}
void method2()
{
var x = DoSetupStuff();
// Method 2 specific code that uses x
DoCleanupStuff(x);
}
Но я бы предпочел сделать что-то, где мне не нужно каждый раз вызывать методы настройки и очистки.Может быть, как один вызов, где могут быть переданы конкретные вещи метода?
void SetupAndCleanup( method-specific-code )
{
// Setup code here
int x = 1;
// method-specific code injected here.
// note that it uses x.
// cleanup code here
x = 0;
}
Подход method1, method2 работает отлично, я просто брожу, если есть способ улучшить его или сделать его более элегантным.