Objektive Gründe für die Verwendung von Leerzeichen anstelle von Tabs für den Einzug? [geschlossen]

8

Gibt es objektive Gründe für die Verwendung von Leerzeichen anstelle von Tabs zum Einrücken von Dateien gemäß PSR-2-Standard, kann jemand folgendes angeben:

  • Fakten,
  • Referenzen,
  • spezifisches Fachwissen

Auf welcher PSR-2-Norm basiert?

Autoren des PSR-2-Standards hatten etwas mehr im Sinn als "Look and Feel", etwas mehr als nur meinungsbezogenes Ding, und viele Leute haben Schwierigkeiten zu verstehen, warum Räume während der Teamarbeit besser sind.

Erklärung zur akzeptierten Antwort:

Nach Farsides 'Antwort: Repositories Sache kann genau sein, warum Leerzeichen in PSR-2 als Einzugstool erklärt werden. PSR-2 ist standardmäßig entwickelt, um die Teamarbeit zu unterstützen. Einzelne zufällige Leerzeichen am Zeilenanfang - wenn Tabs verwendet werden - sind in der IDE möglicherweise nicht sichtbar und können sich in das Repository zurückziehen. Wenn ein paar Leute an der gleichen Datei arbeiten, ist es sehr möglich, unnötige Konflikte zu erzeugen. Die Verwendung von Leerzeichen anstelle von Tabulatoren macht es möglich, einen solchen zufälligen Platz auf dem Augapfel leicht zu finden, und dies ist wahrscheinlich ein Grund, warum sie zu einem Standard werden.

    
yergo 26.02.2016, 10:55
quelle

1 Antwort

12

Fakten:

1. GIT und andere Versionskontrollsysteme behandeln den Weißraum unterschiedlich

Basierend auf meiner Erfahrung haben wir uns unseren Projekten gestellt: GIT und andere Versionskontrollsysteme behandeln unsichtbare spaces + TABS anders und es führt zu Änderungen in den Zeilen, die wirklich ' t war betroffen. Es ist leicht, nicht zu bemerken, wenn versehentlich ein space +% hinzugefügt wird. Co_de% = Einrückung sieht in der IDE gleich aus, aber GIT macht den Unterschied beim Zusammenführen. Es beeinträchtigt Ihre Fähigkeit, Revisionen in der Quellcodeverwaltung effektiv zu vergleichen , was wirklich beängstigend ist. Es wird nie passieren, wenn Sie nur TAB haben.

2. Neutralisierung der Unterschiede in der Umgebung des Mitarbeiters (Editor, Betriebssystem, Einstellungen, etc.)

Die Breite der Registerkarte (in Leerzeichen) hängt von Ihrer Umgebung ab (Texteditor, Betriebssystem, Einstellungen usw.), aber ist die Leerzeichenbreite überall gleich . IDEs sind intelligent genug, um Leerräume nach Ihrem persönlichen Geschmack zu behandeln, aber die für die Zusammenarbeit erzeugte Ausgabe sollte den Standards entsprechen.

3. Entwickler, die Leerzeichen verwenden, verdienen mehr Geld als diejenigen, die Registerkarten verwenden

Die Verwendung von Leerzeichen anstelle von Tabs ist mit einem höheren Gehalt von 8,6% verbunden. Die Verwendung von Leerzeichen anstelle von Tabs ist mit einer so hohen Gehaltsdifferenz wie zusätzliche 2,4 Jahre Erfahrung verbunden. (Quelle: Stack Overflow 2017 Entwicklerumfrage ).

4. Zahlreiche Studien zum Kodierungsstil Wichtigkeit

Wenn jeder Mitarbeiter in Ihrem Projekt die gleichen Standards für das Codieren einhalten würde - es wird auf lange Sicht gut sein, ist die Zusammenarbeit effizienter und professioneller, derselbe Spiegelstrich bei der Umgestaltung oder Entwicklung. Studien dazu:

  1. Zum Beispiel bestätigte Ben Shneiderman dies in explorativen Experimenten im Programmiererverhalten :

      

    Wenn Programmanweisungen in einer vernünftigen Reihenfolge angeordnet wurden , konnten sich Experten besser an sie erinnern als Novizen. Wenn die Aussagen gemischt wurden, wurde die Überlegenheit der Experten reduziert.

  2. Eine alte Studie aus dem Jahr 1984 von Soloway und Ehrlich , zitiert in Code Complete , und unterstützte Studien von Die Elemente des Programmierstils :

      

    Unsere empirischen Ergebnisse fügen diesen Regeln Rechnung: Es ist nicht nur eine Frage der Ästhetik, dass Programme in einem bestimmten Stil geschrieben werden sollten. Vielmehr gibt es eine psychologische Grundlage, um Programme in herkömmlicher Weise zu schreiben : Programmierer haben starke Erwartungen, dass andere Programmierer diesen Diskursregeln folgen werden. Wenn die Regeln verletzt werden , dann wird der Nutzen, der sich aus den Erwartungen, die Programmierer im Laufe der Zeit entwickelt haben, ergibt, effektiv zunichte gemacht . .

Farside 26.02.2016, 10:58
quelle

Tags und Links