public static void Solid() { Console.WriteLine("SOLID"); // srp var studentWithLog = new StudentWithLog(); studentWithLog.Remove(1); // ocp ILogger logger = new LogToOutput(); logger.Log("Log to output"); // lsp var students = new List <ICandidate> { new NormalStudent(), new AdvancedStudent(), // new ForeignStudent() }; foreach (var student in students) { student.SecretaryCandidate(); } // dip new LogManagerDip(new LogToOutput()).Log("Log to output with DIP"); new LogManagerDip(new LogToFile()).Log("Log to file with DIP"); }
public void LogToOutput(string error) { var logger = new LogToOutput(); logger.Log(error); }