4 Stimmen

Beispiele für absichtliche Fehlentscheidungen

Ich habe mich gerade dabei ertappt, wie ich etwas tue, was ich oft tue, und wollte es verallgemeinern, ausdrücken, weitergeben und sehen, wer sonst noch diese allgemeine Praxis verfolgt, um einige andere Beispielsituationen zu finden, in denen es relevant sein könnte.

In der Regel wird zuerst etwas absichtlich falsch gemacht, um festzustellen, ob alles andere richtig ist, bevor man sich an die aktuelle Aufgabe macht.

Ich habe versucht, Beispiele in unserer Codebasis zu finden, in denen das dojo TextArea Widget verwendet wurde. Ich wusste (weil ich es vor mir liegen hatte - Existenzbeweis), dass das TextBox-Widget in mindestens einer Datei vorhanden war. Also suchte ich zuerst nach dem, von dem ich wusste, dass es da war:

grep -r digit.form.TextBox | grep -v svn

Das war nicht richtig - ich hatte den (für mich) üblichen Fehler gemacht, den Stern wegzulassen, also habe ich das korrigiert:

grep -r digit.form.TextBox * | grep -v svn

die keine Ergebnisse lieferte! Ein schneller Vergleich mit der Datei, die ich mir ansah, zeigte mir, dass ich "dijit" falsch geschrieben hatte:

grep -r dijit.form.TextBox * | grep -v svn

Und jetzt habe ich Ergebnisse. Cool; dass ich es zuerst absichtlich falsch gemacht hatte, bedeutete, dass meine Abfrage richtig war, außer dass ich nach dem Falschen suchte, so dass ich jetzt die richtige Abfrage konstruieren konnte:

grep -r dijit.form.TextArea * | grep -v svn

und seien Sie sicher, dass die fehlenden Ergebnisse darauf zurückzuführen sind, dass es keine solchen Dateien gibt, und nicht darauf, dass ich die Abfrage falsch formuliert habe.

Ich werde drei weitere Beispiele als Antworten hinzufügen; bitte fügen Sie weitere hinzu, die Ihnen bekannt sind.

4voto

Carl Manaster Punkte 38966

TDD

Der Rot-Grün-Refactor-Zyklus der testgetriebenen Entwicklung ist vielleicht der Archetyp dieser Praxis. Bei Rot zeigen Sie, dass die Funktionalität nicht vorhanden ist; dann stellen Sie sie her und zeigen, dass Sie dies getan haben, indem Sie den grünen Balken sehen.

1voto

Smandoli Punkte 6790

http://support.microsoft.com/kb/275085

Diese VBA-Routine schaltet die Eigenschaft "Subdatasheets" für jede Tabelle in Ihrer MS Access-Datenbank aus. Der Benutzer wird angewiesen, sicherzustellen, dass die Fehlerbehandlung auf "Break only on unhandled errors" eingestellt ist. Die Routine identifiziert die Tabellen, die die Korrektur benötigen, anhand des Fehlers, der ausgelöst wird. Ich bin mir nicht sicher, ob dies genau auf Ihre Frage zutrifft, aber ich finde es immer interessant, dass der Fehler auf eine Weise verwendet wird, die kein Fehler ist.

1voto

Smandoli Punkte 6790

Hier ist ein Beispiel aus VBA :

Ich verwende auch Camel Case, wenn ich meine Variablen dimme. ThisIsAnExampleOfCamelCase. Sobald ich die VBA-Codezeile verlasse und Access die Kleinbuchstaben-Variable nicht in Kleinbuchstaben ändert, weiß ich, dass ich einen Tippfehler habe. (ODER, Option Explicit ist nicht gesetzt, was das Thema des Beitrags ist.]

Ich wende diesen Trick auch an, mindestens mehrmals pro Stunde.

0voto

Carl Manaster Punkte 38966

Vereinbaren - behaupten. - handeln - behaupten

In meinen Tests füge ich manchmal gerne eine Gegenbehauptung vor der Handlung ein, um zu zeigen, dass die Handlung tatsächlich für das gewünschte Ergebnis verantwortlich ist, das durch die abschließende Behauptung demonstriert wird.

0voto

Carl Manaster Punkte 38966

Wenn ich Zweifel an meiner Rechtschreibung habe, et der Rechtschreibprüfung meines Redakteurs

Wir verwenden viele Editoren. Viele von ihnen heben falsch geschriebene Wörter schon bei der Eingabe hervor, manche nicht. Ich verlasse mich auf die automatische Rechtschreibprüfung, aber ich kann mich nicht immer daran erinnern, ob der aktuelle Editor diese Funktion hat. Also gebe ich, sagen wir, "circuitx" ein und drücke die Leertaste. Wenn das Wort hervorgehoben wird, gehe ich über das Leerzeichen und das "x" zurück und tippe ein weiteres Leerzeichen ein - und erfahre, dass ich "circuit" richtig geschrieben habe - wenn nicht, kopiere ich das Wort und füge es in eine bekannte Rechtschreibprüfung ein, um zu sehen, ob ich es richtig geschrieben habe.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X