public void Apply(LearnedAboutFunctionalProgramming e) { currentState = ProgrammerState.Knowing; }
public Developer() { State = new Newbie(this); }
public void Apply(FinishedEducation e) { currentState = ProgrammerState.Educated; }
public ProgrammerStateChangedEventArgs(ProgrammerState newState) { NewState = newState; }