dedlfix: Gültigkeit von Variablen - Lesbarkeit und Konvention

Beitrag lesen

Tach!

Douglas Crockfort hebt bei seiner in den Augen einiger peniblen Art der Code-Konventionen immer wieder hervor, dass es um die Lesbarkeit des Codes geht. Intantiiere ich Variablen am Anfang einer Klasse, geht es ja wohl nur um die Lesbarkeit. Man liest, dass es sie gibt und welchen Anfangswert sie haben (aus dem man dann auch u.U. schließen kann, was mal draus werden soll). Der Kommentar gehört natürlich dazu. Aber ohne Variablendefinition ja wohl kein Kommentar, so zumindest verstehe ich die in meinen Augen bisher sehr sinnvolle Konvention beim Zend Framework.

Unterscheide

class foo {
  function qux() {
    echo $this->bar;
  }
}

und

class foo {
  var $bar;

function qux() {
  ...
}

und

class foo {
  var $bar = null;

function qux() {
  ...
}

Das $bar ganz wegzulassen und dann zu verwenden ist normalerweise nicht besonders sinnvoll oder praktisch. (Eine Ausnahme wäre Get/Set-Magie). Also Variante 1 scheidet schonmal aus. Es geht in diesem Zweig nur um die Varianten zwei und drei. $bar ist also in jedem Fall vorhanden. Variante drei hat ein überflüssiges "= null". Ebenso überflüssig wären andere Werte, die im Konstruktor sowieso überschrieben werden. In diesen beiden Fällen eine Zuweisung vorzunehmen, dient lediglich der Prinzip-Befriedigung. (Wenn ich das in C# mache, dann kassiert das der ReSharper ein.) Unnützer Code verschlechtert in meinen Augen die Lesbarkeit (genauso wie if ($var == true) und Konsorten).

Wenn ich programmiere und dabei ein anderes System verwende, will ich nicht immer in dessen Code schauen, um wichtige Informationen zu bekommen. Wichtige Dinge, darunter zählen auch Default-Werte, sollten in der Inline-Dokumentation erwähnt sein, die mir meine IDE direkt in meinen Code einblendet, wenn ich irgendwas verwende. Und dann ist es auch praktisch egal, ob der Wert nun explizit oder erst im Konstruktor gesetzt wird.

dedlfix.

0 49

Gültigkeit von Variablen

Kenan
  • php
  1. 0
    dedlfix
    1. 0
      T-Rex
      1. 0
        dedlfix
        1. 0

          Gültigkeit von Variablen - Lesbarkeit und Konvention

          tami
          1. 0
            dedlfix
            1. 0
              tami
              1. 0
                dedlfix
                1. 0
                  tami
                  1. 0
                    dedlfix
                    1. 0

                      Lesbarkeit und Konvention in PHP und Javascript

                      tami
                      1. 0
                        dedlfix
                        1. 0
                          tami
                          1. 0
                            dedlfix
                            1. 0

                              Lesbarkeit und Konvention in PHP und Javascript "==" und "==="

                              tami
                              1. 0
                                dedlfix
                                1. 0
                                  tami
                                  1. 0
                                    dedlfix
                                    1. 0

                                      Lesbarkeit und Konvention .- "heile Welt ... zusammenlügen"

                                      tami
                                      1. 0
                                        dedlfix
                                  2. 0
                                    Sven Rautenberg
                                    1. 0
                                      tami
                                      1. 0
                                        tami
                                      2. 1
                                        Sven Rautenberg
                                        1. 0

                                          Wo funktioniert (braucht man) "==" und nicht "==="

                                          tami
                                          1. 0
                                            Matthias Apsel
                                            1. 0
                                              tami
                                            2. 1
                                              Sven Rautenberg
                                              1. 0

                                                "==" auch bei Arrays und Objekten "gefährlich" ...;

                                                tami
                                                1. 0
                                                  dedlfix
                                                  1. 0

                                                    "==" auch bei Arrays und Objekten "gefährlich"/fehleranfällig

                                                    tami
                                                    1. 0
                                                      dedlfix
                                                      1. 0
                                                        tami
                                                        1. 0
                                                          bubble
                                                          1. 0
                                                            tami
                                                            1. 0
                                                              dedlfix
                                                              1. 0
                                                                tami
                                                2. 2
                                                  Sven Rautenberg
                                                  1. 0

                                                    "==" bei Arrays "gefährlich"? Crockford on Programming Style...

                                                    tami
                                          2. 0
                                            Matthias Apsel
  2. 0
    tami
    1. 0
      dedlfix
      1. 0

        Gültigkeit von Variablen - Coding Style

        tami
        1. 0
          dedlfix
          1. 0
            tami
  3. 0
    Sven Rautenberg
    1. 0

      Variablen-Initialisierung mit "null" === Prinzipienbefriedigung?

      tami
      1. 0
        dedlfix
      2. 0
        Sven Rautenberg