Ich war es gewohnt, in C # im TDD-Stil zu codieren - einen kleinen Codeabschnitt zu schreiben / oder zu ändern, die gesamte Lösung in 10 Sekunden neu zu kompilieren, die Tests erneut auszuführen und noch einmal. Einfach...
Diese Entwicklungsmethode hat für mich einige Jahre lang sehr gut funktioniert, bis ich letztes Jahr wieder auf C ++ zurückgreifen musste und das Gefühl hat, dass meine Produktivität seitdem dramatisch abgenommen hat. Das C ++ als Sprache ist kein Problem - ich hatte ziemlich viel Erfahrung mit C ++ - Entwicklern ... aber in der Vergangenheit.
Meine Produktivität ist für kleine Projekte noch in Ordnung, aber es wird schlimmer, wenn die Projektgröße zunimmt und wenn die Kompilierungszeit mehr als 10 Minuten beträgt, wird es wirklich schlimm. Und wenn ich den Fehler finde, muss ich erneut mit dem Kompilieren beginnen usw. Das ist einfach nur frustrierend.
Daher kam ich zu dem Schluss, dass ein kleiner Teil (wie zuvor) nicht akzeptabel ist - Empfehlungen, wie ich mich in die alte Gewohnheit des Codierens für etwa eine Stunde einarbeiten kann, wenn ich den Code manuell überprüfe (ohne mich auf einen schnellen C # -Compiler zu verlassen). und Komponententests nur einmal in ein paar Stunden neu kompilieren / erneut ausführen.
Mit C # und TDD war es sehr einfach, einen Code evolutionär zu schreiben - nach einem Dutzend Iterationen endete der Mist, mit dem ich angefangen hatte, in einem guten Code, aber er funktioniert für mich nicht mehr (in einer langsamen Kompilierung) Umgebung).