public void TestParsingUndBerechnung() { //Test-Driven-Development //Der selbe Unit-Test muss auch für alle abgeleiteten Klassen von Parser oder Rechner funktionieren (Liskovsches Substitutionsprinzip) IParser parser = new Parser(); IFormel formel = parser.Parse("5/1"); IRechner rechner = new FlexRechner(); Assert.AreEqual(5, rechner.Rechne(formel)); }
static void Main(string[] args) { //Bootstrapping IParser parser = new Parser(); IRechner rechner = new FlexRechner(); //evtl. Plugins importierenm per Reflection Console.Write("Bitte geben Sie die Aufgabe ein: "); //Dateneingabe string aufgabe = Console.ReadLine(); //Parsen IFormel formel = parser.Parse(aufgabe); //Berechnung double ergebnis = rechner.Rechne(formel); //Aufgabne Console.WriteLine($"\nErgebnis: {ergebnis}"); Console.ReadKey(); }