Frage

Der Ausbau dieser Frage auf, wie habe ich gelernt, von Problembeschreibung passieren zu codieren Zwei Personen TDD erwähnt.

Wäre es gut sein für einen Starter in TDD zu bekommen (und vermeidet schlechte Gewohnheiten in der Zukunft?) Oder wäre es für eine Bühne zu komplex sein, wenn zu verstehen, was eine Programmiersprache ist?

War es hilfreich?

Lösung

TDD ist gemeint, die „traditionelle“ Methode, um einfacher als (nicht es bis zum Ende zu testen) - weil die Tests klären, was Sie über das Problem verstehen. Wenn Sie tatsächlich keine klare Vorstellung davon, was das Problem war, das Schreiben von Tests ist ziemlich hart haben.

Also für einen Anfänger, das Schreiben von Tests wird das Denken Saft in der richtigen Richtung, das Vertragsverhalten, nicht Implementierung Verhalten.

Andere Tipps

Ich wünsche TDD um war, als ich zum ersten Mal zu programmieren zu lernen war und dass ich sie aufgelesen hatte, bevor in dem ‚alten Weg‘ so verankert zu werden, so dass es sehr schwierig für mich, TDD zu lernen ...

erleben TDD-Regeln Alle

Ich denke auch, dass im Idealfall TDD in den frühen Phasen des Lernens sehr hilfreich wäre. Im Nachhinein weiß ich, es würde ich die Probleme in einem ganz anderen Licht Ansatz geholfen.

Was ich bin perplex ist, dass, wenn man lernt, es gibt so viele neue Konzepte sind absorbiert, dass Verwirrung sehr früh festgelegt in beginnen. Daher kann, während ich TDD denken wäre super hilfreich, ich glaube nicht, dass es etwas sein kann, die erfolgreich von sich selbst gelernt hat.

Genau wie alles andere im Leben neigen wir am besten lernen, wenn jemand körperlich lehrt uns. Zeigen Sie uns, wie sie die Probleme in einer TDD-Weise nähern kann so viel mehr tun, als darüber zu lesen in Büchern oder im Internet. Ich meine, das kann nicht schaden, aber es ist kein Ersatz für einen Mentor, der Ihnen die Seile wirklich zeigen kann.

TDD erleben alles Wenn Sie also können Sie jemand beibringen, wie man in diesen frühen Stadien TDD, ich glaube, als Ganzes Lernen jenseits beschleunigt würde, was jemand würde erwartet.

def self.learn_tdd_and_programming_together?
  if you_have_tdd_mentor_sitting_next_to_you?
    "go for it"
  else
    if language.ruby?
      "it's possible, there is quite a bit of good stuff out 
      there that could give you a chance of learning programming 
      with TDD from the start. It's sort of in the ruby culture"
    elsif language.dot_net?
      "learn TDD after you learn the basics of .NET"  
    end
  end
end

es ist sicherlich viel in nehmen, aber gesagt haben, dass ich wünschte, ich begann Tests Einheit auszuschreiben. Was wäre eigentlich gut gewesen war, wenn ich einen Mentor an meinem Arbeitsplatz hatte, der meinen TDD Fortschritt geführt haben könnte. Ich habe TDD selbstlernend gewesen und Ausschalten für etwa ein Jahr und es gibt eine Menge zu decken und je mehr Sie tun es die mehr beteiligt es wird, aber es fängt wirklich für mich jetzt auszuzahlen.

Ich denke, diese Kommentar zeigt, dass es eine sehr gute Sache sein kann für Anfänger gerade nach oben zu lernen.

Meine Programmierung Motto lautet:

  1. Machen Sie es laufen - das Programm löst das Problem
  2. Machen Sie es richtig - das Programm ist sauber und es gibt eine kleine Menge Doppelarbeit
  3. Machen Sie es schnell - optimiert (falls erforderlich)

Test Driven Development behandelt die ersten beiden.

Ich denke, ein Anfänger TDD gelehrt werden soll, so dass er weiß, wie man Programme laufen zu lassen. IMHO, nur dann kann eine gute Design-Techniken gelehrt werden.

Ich denke, ja. Studien fanden auch, dass der Nutzen am größten sind für Anfänger . Es gibt Ihnen mehr Anleitung für den Code zu schreiben. Sie wissen, was die Ergebnisse und das Verhalten sein sollten, und die Tests schreiben. Dann Sie den Code schreiben. Tests bestehen. Sie sind fertig. Und du weißt, du bist fertig.

Ja! Bestimmt.

Ich denke, es ist für jemanden nicht gut ist nur zu lernen, Programmierung. Wie wird wissen, dass Person, was zu behaupten? : P TDD ist für das Design, nicht für die Prüfung. Sobald eine Person weiß, wie man programmiert, wird es eine gute Sache sein studiying den TDD Ansatz zu starten.

Zuerst müssen Sie verstehen, wie gut codieren. Lesen, zu studieren und üben, dass, bis Sie einen guten Griff auf sie haben. Sobald Sie das haben, schauen Sie in Test Driven Design -. Es ist sehr mächtig

Ein wichtiger Vorteil von TDD ist die Definition doneness. In einfachen algorithmischen Programmierung, wenn Sie mit ein paar Szenarien kommen, wo Richtigkeit leicht geltend gemacht wird, ist es einfach, sie in einem Gerät zu testen aufzuzählen und halten, bis sie Codierung alle Arbeiten.

Manchmal Testeinheit kann für Anfänger schwierig sein, wenn es viele Abhängigkeiten und Sie beginnen in Szenarien zu laufen, wo Objekte spöttischen notwendig ist.

Wenn Sie jedoch eine einfache Aussage über die Richtigkeit machen, und es ist leicht, tippen sie dann auf jedem Fall schreibt in Code nach unten.

Sie können auch beachten, dass, wenn eine einfache Erklärung der Richtigkeit nicht leicht beschrieben ist, können Sie nicht vollständig Ihr Problem verstehen können.

Viel Glück ...

Es hängt wirklich von Ihrer Definition eines „Starter“. Wenn von „Starter“ Sie jemand mit absolut keine Programmierkenntnisse bedeuten, dann nein, ich glaube nicht, TDD ein sehr guter Weg, um zu beginnen. Ein Programmierer braucht, um die Grundlagen zu erlernen (Vermeidung von Endlosschleifen, Speicherzuweisung, etc.), bevor sich Gedanken über Refactoring und Test Driven Development.

Code ist der Code, ob es die Sache ist, Sie versuchen Spike aus, oder ein Test.

TDD am Anfang Lernen hat viel Wert. Es ist eine jener Fähigkeiten, die eine Gewohnheit sein sollte. Es gibt eine Menge von uns gibt, die verstehen und wie der Wert von TDD aber Jahre der Programmierung haben einige einige Gewohnheiten eingeflößt, die hart sein kann später zu brechen.

Soweit TDD für Vertragsgestaltung / Code-Implementierung sein / Testen es all diese Dinge ist. Wird TDD Sie den perfekten Code bringen? Nein, die Erfahrung und das Handwerk zu studieren helfen Ihnen, Ihre Codierung Ansätze reifen. Aber TDD ist ein sehr wichtiges Instrument für jeden Entwickler.

Die Verwendung von TDD wird hoffentlich helfen Sie zu einem Design zu bringen, die prüfbar ist. Und ein Design, das prüfbar ist in der Theorie gut gekapselt und soll in das offenen geschlossenen Haupt einzuhalten.

Meiner Meinung nach, solange die Menschen TDD als etwas, das eine Nische Werkzeug ist oder irgendwie optional beim Schreiben von Code, offensichtlich diese Leute nicht den Wert von TDD.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top