Skeeve: Codekonventionen für Funktions-klammern

Beitrag lesen

Moin!

Gut, dann muss ich das noch mal schön langsam erklären:

Okay... Ich auch... Beispiele kopiere ich nicht mit. Ich beziehe mich auf Deine.

Für mich ist Variante 1 ganz klar die übelste (und populärste).

Für mich ist Variante 1 ganz klar das Optimum. Sie ist populär, somit ist man dran gewöhnt. Sie nutzt den Platz optimal aus. Ist übersichtlich da zusammengehöriges auch zusammen steht und neue Teile (das elsif und das else) optisch durch eine (Nahezu-)Leerzeile abgetrennt ist.

Kopieren von Code wird schwieriger.

Das mußt Du mir mal erklären.

Man kann natürlich auch anderer Meinung sein, mir geht es ausschliesslich darum meine Meinung verständlich zu machen.

Dito.

Variante 2 ist indiskutabel da man ein if ohne Klammern nicht in der Form schreibt; das heißt dann:  ;-)
print "negative" if $x < 0;

Variante 3, Deine präferierte, finde ich suboptimal da sie verschwenderisch mit dem, vertikal zur Verfügung stehenden Platz umgeht und den Leser unnötig früh zum Scrollen zwingt. Zudem fügt sie visuelle Stolperfallen ein, wo keine hingehören. Das >>print "negative";<< gehört nun mal direkt zum "if".

Aber wie schon gesagt: Im wikipedia Artikel der hier im Thread bereits verlinkt ist, ist das alles schön zusammengefßt und diese Diskussion ist eigentlich müßig.

-- Skeeve

0 92

Codekonventionen für Funktions-klammern

Thomas Schenkeli
  • javascript
  1. 0
    Cybaer
    1. 0
      _roro
      1. 2
        Cybaer
        1. 0
          _roro
          1. 0
            Cheatah
          2. 0

            Emacs und Tabs

            hkl
            • programmiertechnik
            1. 0
              seth
              1. 0

                Tabbing

                hkl
  2. 1
    Der Martin
    1. 2
      Cheatah
      1. 0
        Der Martin
        1. 0
          Cheatah
          1. 0
            Der Martin
            1. 0
              Gunnar Bittersmann
            2. 0
              Cheatah
              1. 0
                Der Martin
            3. 0
              Cybaer
              1. 0
                Hamstar
                1. 1
                  Cybaer
                  1. 0
                    Hamstar
                    1. 0
                      Jörg Lorenz
                    2. 0
                      Cybaer
                      1. 0
                        Hamstar
                        1. 0
                          Cybaer
                          1. 0
                            Hamstar
          2. 0
            Thomas Schenkeli
        2. 0
          Genie
    2. 0
      Maxx
  3. 0
    Bio
    1. 0
      Hamstar
      1. 0
        Bio
        1. 0
          Hamstar
          1. 0
            Bio
            1. 0
              Hamstar
  4. 0
    Hamstar
    1. 0
      Hamstar
      1. 0
        Thomas Schenkeli
        1. 1
          Mathias Brodala
          1. 2

            ECMAScript, Function Declarations

            Tim Tepaße
          2. 0
            Thomas Schenkeli
            1. 0
              Tim Tepaße
        2. 0
          Hamstar
  5. 0
    Tim Tepaße
    1. 0
      Hamstar
      1. 0
        Tim Tepaße
        1. 0
          Hamstar
          1. 0
            Tim Tepaße
            1. 0
              Hamstar
              1. 0
                Hamstar
              2. 0
                Tim Tepaße
                1. 0
                  Hamstar
                  1. 0
                    Tim Tepaße
  6. 0
    Skeeve
    1. 0
      Hamstar
      1. 0
        Skeeve
        1. 0
          Hamstar
          1. 1
            Skeeve
            1. 0
              Hamstar
              1. 0
                Skeeve
                1. 0
                  Hamstar
                  1. 0
                    Skeeve
                    1. 0
                      Hamstar
          2. 0
            Benjamin Buxbaum
            1. 0
              Hamstar
              1. 0
                Benjamin Buxbaum
                1. 0
                  Hamstar
    2. 0
      .nils.
  7. 0
    Struppi
  8. 0
    Jörg Lorenz
    1. 0
      Der Martin
      1. 0
        Jörg Lorenz
        1. 0
          Der Martin
          1. 0
            Jörg Lorenz
            1. 0
              MudGuard
              1. 0
                Jörg Lorenz
                1. 0
                  MudGuard
    2. 0
      Skeeve
      1. 0
        Jörg Lorenz
  9. 0
    seth
  10. 0
    .nils.
  11. 0
    annA
    1. 0
      Hamstar
    2. 0

      hessisch

      seth
      • menschelei
      1. 0
        Struppi
        1. 0
          seth_not@home
          1. 0

            a hesssch Snippet

            hkl
            1. 0
              seth_not@home
              1. 0
                hkl
                1. 0

                  aebblwoi, aebbler, ...

                  seth
          2. 0
            Struppi
      2. 0
        Der Martin