public static void Main()
var startup = new GeneratorFunctionsStartup();
public abstract class FunctionsStartup
public abstract void Configure();
public abstract class DataQualityFunctionsStartup : FunctionsStartup
public override sealed void Configure()
this.ConfigureInternal();
protected abstract void MandatoryStep1();
protected virtual void MandatoryStep2()
protected void OptionalStep1()
protected abstract void ConfigureInternal();
private void MandatoryStep3()
public class GeneratorFunctionsStartup : DataQualityFunctionsStartup
protected override void ConfigureInternal()
protected override void MandatoryStep1()
private void SpecificStep()