Tabs oder Leerzeichen?
Tabs oder Leerzeichen?
hallo,
ich stelle mit jetzt schon seit längeren die Frage was bei einem source code (php, python, java usw) besser ist. bei z.b. if-scheifen tabs zu einrücken zu verwenden oder rein nur leerzeichen?
wie mach ihr das?
ich stelle mit jetzt schon seit längeren die Frage was bei einem source code (php, python, java usw) besser ist. bei z.b. if-scheifen tabs zu einrücken zu verwenden oder rein nur leerzeichen?
wie mach ihr das?
cu L@w
---
LINUX - because booting is for adding hardware!
---
LINUX - because booting is for adding hardware!
Tabs ist wohl zu empfehlen, da die in den meisten Editoren einstellbar sind und somit auf die persönlichen Bedürfnisse anpassbar. Ausserdem merken sich viele Editoren ein Tab, so das du nach einem Enter wieder auf dem selben "Tablevel" bist wie vorher, was einem unterstützt schön strukturierten Code zu schreiben.
cu
cu
- emge
- Beiträge: 1525
- Registriert: 20.10.2003 22:05:46
- Lizenz eigener Beiträge: Artistic Lizenz
- Wohnort: 50° 45' 0" N 12° 10' 0" E
Tabs finde ich im Prinzip auch praktischer (siehe Posting von tylerD). Leider funktioniert das alles nur, wenn man allein an seinem Source-Code arbeitet oder sich alle Beteiligten streng an einen Styleguide halten.
Wir arbeiten hier mit mehreren Entwicklern an Java und DB-Projekten (PL/SQL auf Oracle) da verwendet jeder tausendundein verschiedene Tools und jedes geht mit Tabs/Leerzeichen anders um. Dazu kommt, dass wir ab und zu Code von dritter Seite bekommen, auf dessen Formatierung wir keinerlei Einfluss haben.
Mein Resumee aus der ganzen Geschichte: Jeder soll es so handhaben, wie er es am besten findet. Bevor Code ins Repository eingecheckt wird, wird mit einem Code-Beautifier (der entsprechend unserem Coding-Styleguide konfiguriert ist, drübergebügelt. Als kleinster gemeinsamer Nenner werden dort z. B. alle Tabs durch Leerzeichen ersetzt.
Grüße, Marco
Wir arbeiten hier mit mehreren Entwicklern an Java und DB-Projekten (PL/SQL auf Oracle) da verwendet jeder tausendundein verschiedene Tools und jedes geht mit Tabs/Leerzeichen anders um. Dazu kommt, dass wir ab und zu Code von dritter Seite bekommen, auf dessen Formatierung wir keinerlei Einfluss haben.
Mein Resumee aus der ganzen Geschichte: Jeder soll es so handhaben, wie er es am besten findet. Bevor Code ins Repository eingecheckt wird, wird mit einem Code-Beautifier (der entsprechend unserem Coding-Styleguide konfiguriert ist, drübergebügelt. Als kleinster gemeinsamer Nenner werden dort z. B. alle Tabs durch Leerzeichen ersetzt.
Grüße, Marco
- peschmae
- Beiträge: 4844
- Registriert: 07.01.2003 12:50:33
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: nirgendwo im irgendwo
If ist eine Bedingung/Verzweigung/WasAuchImmer aber sicher keine Schleife
Grundsätztlich sind Tabs besser. Da verzählst du dich auch kaum je und du kannst es je nach Editor/Projekte passend einstellen.
Gute IDEs wie Eclipse können auch so konfiguriert werden, dass sie das Einrücken in den meisten Fällen automatisch richtig machen.
MfG Peschmä
Grundsätztlich sind Tabs besser. Da verzählst du dich auch kaum je und du kannst es je nach Editor/Projekte passend einstellen.
Gute IDEs wie Eclipse können auch so konfiguriert werden, dass sie das Einrücken in den meisten Fällen automatisch richtig machen.
MfG Peschmä
Naja, Tabs sind auch nicht so das ware. Vor allem bei vielen Entwicklern an einem Projekt, die aber mit unterschiedlichen Tools arbeiten, würde ich leerzeichen Vorziehen. Denn sonst kommt gleich wieder die Diskussion mit der Anzahl der Tabs. Das sieht jeder anders, da jeder andere tabweiten hat. Mit einer Regelung wie 4 Leerzeichen zum Einrücken gibt es da keine Probleme.
Zum größten teil ist das ganze aber Geschmackssache.
Zum größten teil ist das ganze aber Geschmackssache.
- pdreker
- Beiträge: 8298
- Registriert: 29.07.2002 21:53:30
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Nürnberg
Mit der 4-Leerzeichenregelung ist man aber auch festgelegt. Ich bevorzuge "Linus-Style", d.h. 8 Spaces pro Indent, wenn Dein Programm dann hinten bei 80 Zeichen rausläuft stimmt was nicht, mit dem Code (Das funktioniert übrigens in Java vorne und hinten nicht). Der Vorteil von Tabs ist jetzt einfach, dass ich in meinem Editor einfach Tabs auf 8 stellen kann, und dann sieht der Code so aus, wie ich es gerne hätte. Jemand anderes der nur 4 Spaces bevorzugt stellt in seinem Editor die Tabs halt auf 4 und voilà...
Patrick
Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de
Jabber: pdreker@debianforum.de
- emge
- Beiträge: 1525
- Registriert: 20.10.2003 22:05:46
- Lizenz eigener Beiträge: Artistic Lizenz
- Wohnort: 50° 45' 0" N 12° 10' 0" E
Nur so zu Befriedigung meiner Neugier: wie meinst'n das? Ist der Code dann schlecht lesbar? Kann Java das nicht?...pdreker hat geschrieben:...Das funktioniert übrigens in Java vorne und hinten nicht...
Grüße, Marco
[edit] Jetzt habe auch ich verstanden (danke Bert), das du vermutlich auf die Probleme mit Java bei einer 8er-Einrückung hinaus willst. Da muss ich dir recht geben, nur ist bei Java eigentlich eine 4er-Einrückung Standard ([1], [2]).
[1] http://java.sun.com/docs/codeconv/html/ ... .doc3.html
[2] http://jakarta.apache.org/cactus/partic ... tions.html
Zuletzt geändert von emge am 20.02.2004 11:13:04, insgesamt 1-mal geändert.
Blöd an der Tab Regelung ist das man für jedes Programm mit dem man den Sourcecode betrachten will die Tab Size entsprechend verändern muss.
Die Sache mit den Tab ging bei unserem Projekt extrem in die Hose, so das der Source Code schlecht lesbar ist. Danach wurde sich auf die "4 Leerzeichen" geeinigt, dummerweise haben sich nicht alle daran gehalten .
Man sollte darauf achten nicht ständig zu wechseln, dass erschwert das Mergen nur unnötig.
eagle
Die Sache mit den Tab ging bei unserem Projekt extrem in die Hose, so das der Source Code schlecht lesbar ist. Danach wurde sich auf die "4 Leerzeichen" geeinigt, dummerweise haben sich nicht alle daran gehalten .
Man sollte darauf achten nicht ständig zu wechseln, dass erschwert das Mergen nur unnötig.
Wer da selber zählt der sollte vielleicht einen richtigen Editor zum Programmieren benutzen!peschmae hat geschrieben:Grundsätztlich sind Tabs besser. Da verzählst du dich auch kaum ..
eagle
"I love deadlines. I love the whooshing sound they make as they fly by." -- Douglas Adams
- pdreker
- Beiträge: 8298
- Registriert: 29.07.2002 21:53:30
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Nürnberg
Grundsärzlich ist das kein technisches Problem, Java stört sich daran nicht. Aber während in C oder C++ Identifier eher "count" oder "listPtr" heissen, sind sie in Java (schon der API) sehr lang, z.B. "ArrayIndexOutOfBoundsException". Wenn man jetzt noch 8 Spaces tief einrückt, und das 80 Zeichen Limit beachtet, wandert man bei Java viel zu schnell rechts aus dem Fenster...emge hat geschrieben:Nur so zu Befriedigung meiner Neugier: wie meinst'n das? Ist der Code dann schlecht lesbar? Kann Java das nicht?...pdreker hat geschrieben:...Das funktioniert übrigens in Java vorne und hinten nicht...
Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de
Jabber: pdreker@debianforum.de
- emge
- Beiträge: 1525
- Registriert: 20.10.2003 22:05:46
- Lizenz eigener Beiträge: Artistic Lizenz
- Wohnort: 50° 45' 0" N 12° 10' 0" E
Das mag sein, aber niemand verwendet eine 8er Einrückung in Java.pdreker hat geschrieben:Grundsärzlich ist das kein technisches Problem, Java stört sich daran nicht. Aber während in C oder C++ Identifier eher "count" oder "listPtr" heissen, sind sie in Java (schon der API) sehr lang, z.B. "ArrayIndexOutOfBoundsException". Wenn man jetzt noch 8 Spaces tief einrückt, und das 80 Zeichen Limit beachtet, wandert man bei Java viel zu schnell rechts aus dem Fenster...emge hat geschrieben:Nur so zu Befriedigung meiner Neugier: wie meinst'n das? Ist der Code dann schlecht lesbar? Kann Java das nicht?...pdreker hat geschrieben:...Das funktioniert übrigens in Java vorne und hinten nicht...
Ansonsten gilt dann auch nur das was du schon gesagt hast: wenn dann der Code aus den Zeilen hinausläuft, ist am Code etwas nicht in Ordnung und man sollte sich mal schnellstens ans Refactorisieren machen oder sich mal überlegen, ob man Variablen mit unendlich langen Namen definieren muss.
Das Klassen-Namen gelegentlich recht lang ausfallen halte ich persönlich nicht unbedingt für einen Nachteil sondern eher förderlich für die Lesbarkeit des Codes.
Grüße, Marco