Yoda Bedingungen



Yoda-Bedingungen (auch: Yoda-Notationen ) werden der Programmiersprache und Form der Quelltext-Formation für die Grenzanweisung vorgelegt , die beide von den Seiten der Bedung übersetzt wurden. Die Bezeichnung für diesen Programmierstil ergibt sich aus der Figur Yoda aus dem Star-Wars- Universum heraus, der dazu gehört, eine andere Sprache zu wählen. [1]

Beispiel

Gewöhnlich schreiben Programmierer eine Lösung, in der Fall fallende Anweisung, so aus:

if ( wert == 52 ) { / * ... * / }
// Liest sich wie: Wenn Wert gleich 52 ...

Yoda Bedingungen genau die umgedrehte Position des Ausdruckinhaltes:

if ( 52 == wert ) { / * ... * / }
// Liest sich wie: Wenn 52 gleich Wert ...

Bei diesem Programmierstil Wird demnach hat keinen Einfluss auf sterben konstant aufgeführt und DANACH wo variable Vergleichswert. Analoge zur Aussprache des Namensgebers Yoda („Vergesst du warst früher du Gelernt“) führt zu einer seltsam anlautenden Aussprache der Bedingung: „Wenn 52gleich wertist …“.

Vorteil

Das vertauschen des Beiden Bedingungswerte Anderes nichts ist verhalten das Programm . Obwohl sich für den Programmierer this bedingungen schlechter lesen Lässt als das erste beispiel, Hut anwendung in denjenigen Programmiersprachen this, Die Eine Wertzuweisung Profilierung mittels = in Einem Ausdruck Sowie Eine implizite umwandlung von Zahlen in Wahrheitswerte erlaub, die vorteil, die Flüchtigkeitsfehler auszuschließen, aus der Kondition Eine Variablenzuweisung zu machen:

if ( wert = 52 ) { / * ... * / }
// Ist (Unbeachtet vom Programmierer) immer
wenn und ender den Inhalt von wert if ( 52 = wert ) { / * ... * / }
// Erstellt einen Syntaxfehler

Dieses beispiellose Beispiel verhindert den Flüchtigkeitsfehler, weil die Laufzeit oder das Kompilieren einen Fehler darstellt. wird erzeugt: 52 ist eine Konstante; dieser darf angegeben werden [2] .

In Mancha Sprachen kann so Auch sterben Ungültige Dereferenzierung Eines Nullwerts vermieden werden:

String wert = null ;
if ( wob . gleich ( "foobar" )) { / * ... * / }
// In Java, Nine NullPointerException auf
if ( "foobar" . gleich ( wert )) { / * ... * / }
// Ist (wer ist Quartett) immer falsch

Kritik

Kritiker des Notationsstils sehen diese mangelhafte Lesbarkeit als zweiten Teil an, der das vermeintlich Problem des oberen beschreibenden Flüchtigkeitsfehlers nicht aufklärt. Dabei werden moderne Entwicklungsumgebungendiese Zeile als Marker anzeigen. Manche Programmiersprachen verstehen zu einer Variablenuführung innerhalb einer Fitness ohnegleichen. [3] Im Programmierprogramm D hat Boolesches Datentypen und können nicht als if-Kriterium verwöhnt werden.

Siehe auch

  • Programmierstil

Weblinks

  • united-coders.com: Was sind Yoda-Bedingungen? Beispiel für Programmiersprache Java (engl.)
  • Neue Programmiersprache Erwähnung der Yoda Bedingungen als Teil einer Sammlung über Begriffe der Programmiersprache
  • Yoda Notation der Codierung in Stil

Einzelstunden

  1. Hochspringen↑ debug Sie die Maus – Yoda Bedingungen in PHP. 10. Mai 2010; abgeraufen am 22. September 2011 (deutsch).
  2. Hochspringen↑ Nils Langner: Yoda Bedingungen. 26. Juli 2010; abgeraufen am 22. September 2011 (deutsch).
  3. Hochspringen↑ Warum Yoda-Bedingungen schlecht sind und die Verwendung von Javas „endgültigem“ Keyword gut ist. 15. Mai 2011; abgeraufen am 22. September 2011 .