Montag, 26. Mai 2014, 11:38
Tabs oder Leerzeichen zur Quelltext-Formatierung?
Einmal eine Frage in die Runde, weil die Diskussion hier intern aufkam: Tabs oder Leerzeichen zur Quelltext-Formatierung? Oder beides?
Ich freue mich über alle Kommentare, objektiv wie subjektiv!
Ich freue mich über alle Kommentare, objektiv wie subjektiv!
Kommentare
Ansicht der Kommentare: Linear | Verschachtelt
.t0mmy
- in manchen Sprachen ohnehin semantisches Zeichen (Python)
- die Einrückung individuell eingestellt werden kann (1 Tab entweder 2 oder 4 Zeichen, wie man es mag)
Aber ich bin schon froh, wenn es überhaupt benutzt wird
hugo
Dann ist das die Frage zu Tabs auch entschieden.
Alphager
hugo
In Python zB verstossen Tabs gegen die Style-Guidelines, in Go darf man keine Leerzeichen verwenden.
Generell tendiere ich zu Leerzeichen.
Kai
uwe
jemand
Leerzeichen gehen einem nur auf den Sack.
NetzBlogR
Kai
Mo
FunThomas
Wenn man alleine auf dem Code arbeitet oder ganz sicher immer der gleiche Editor (mit der gleichen Tab-Definition) verwendet wird, ist Tab die bessere Wahl.
Wenn man aber (wie ich in den letzen Wochen) Code in die Finger kriegt, der von verschiedenen Programmierern mit verschiedenen Editoren bearbeitet wurde und deswegen eine fröhliche Durchmischung von Tabs, definiert als 4 Leerzeichen, Tabs, die offensichtlich mal 8 Leerzeichen repräsentierten und echten Leerzeichen enthält, dann schmeisst man irgendwann verzweifelt alle Tabs raus.
Besonders lustig übrigens bei Python-Code...
Bluewind
Warum sollte ich meine Vorliebe für 4 Leerzeichen anderen Leuten die meinen Code lesen aufzwingen? Mal abgesehen davon, dass ich meine Vorliebe eventuell später mal ändere und dann vielleicht 2, 6 oder 8 Leerzeichen will. So ist das einfach ne Zahl in der vimrc und fertig.
Bei Projekten die schon existieren natürlich das verwenden was das Projekt nutzt.
Misel
Zur Frage selbst: Ich bevorzuge Tabs. Die Breite kann man bei gleichen Dateiinhalt (und geringerem Speicherverbrauch) individuell anpassen.
Leider kommen viele Leute damit scheinbar nicht klar und der Code wird verhunzt, sobald die Anzahl der Coder, die an einem Projekt arbeiten größer als 0,5 wird. Auf Arbeit wurde sich daher auf eine verbindliche Anzahl an Spaces geeinigt, was dann mit Tools wie "Lint" erzwungen wird.
S2B2
Jörg
Wir arbeiten mit teilweise 30 Jahre altem Code, der wahrscheinlich noch ausgedruckt wurde. Einmal Steg+Alt+F und schon ist der Code wieder lesbar und auf meinen breiten Monitor angepasst.
Diese ganzen Style guides sind imho relativ überflüssig, sobald die Editoren den Code formatieren können. Und mit clang-format(ok das ist c/c++ und nicht html) wird das auch immer besser.
Und diese sinnlose Begrenzung auf 80 Zeichen, die viele verwenden ist bei den heutigen breitbildmonitoren Kontraproduktiv, weil der halbe Bildschirm leer ist.
Malte
Kopernikus
damage
Diese Aussage ist in IT Kreisen ungefähr genauso Objektiv diskutierbar wie die Frage nach Tabs oder Leerzeichen.
Andere Idee: das VCS zieht diese Problematik glatt, ersetzt also Tabs durch Leerzeichen oder anderesherum. Das kannst du per Order Mufti entscheiden. Jeder nimmt sich dann sein Editor seiner Wahl und baut das so lange um, bis ihm das gefällt. Evtl. kann man auch beim checkout aus dem VCS das gleich auf die jeweiligen Nutzer anpassen?!
Aber das festzulegen wird dir nicht gelingen (Erfahrung). Entweder du lebst damit das es im Source mal so und mal so auftaucht (was ich persönlich nicht so schön finde) oder baust irgendwas technisches drum rum, damit deine Mitarbeiter wie gewohnt arbeiten können. Eine andere Lösung sehe ich hier nicht
Gruß
Daniel
killerbees19
hoschi
Ausrichtung: Leerzeichen
Begruendung:
Mit Tabs laesst sich Code bequem Einruecken und die Einrueckung kann man an die eigenen Praeferenzen (meist 4 oder 8 Zeichen) anpassen. Die Eingabe von Leerzeichen ist Aufwaendiger und zwingt dem Leser die Einrueckung des Autors auf. Eine schlimme Unsitte ist die Ersetzung von Tabs durch Leerzeichen oder Umgekehrt, weil es keine gute Loesung ist sondern ein schlechter Kompromiss.
Erklaerung:
Die meisten Leute unterscheiden nicht zwischen Tabs (Einrueckung) und Leerzeichen (Ausrichtung), daher kommt das leidige Thema.
Beispiel:
Die Einrueckung eines Blocks erfolgt mit Tabs, die Kommentare dahinter richtet man bitte mit Leerzeichen aus.
Bonus:
Das ist nicht nur ein guter Kompromiss, sondern eine richtige Loesung.
Manuel Schmitt (manitu)
john
Bei eigenen Geschichten ziehe ich i.d.R. 4 Zeichen breite Tabs vor (+ Spaces zur Einrückung), außer für Python, da greife ich zu PEP8.
pikapika
dat pika²