Ich finde den Code besser lesbar, wenn die Schlüssel Wörter (Schlüssel sowohl syntaktisch als auch logisch) so viel wie möglich ausgesetzt sind.
Das ist so wichtig für mich, dass ich manchmal (IMO) ziemlich unkonventionelle Sache nehme.
Hier ist, was es wird, wie:
if (condition) then begin
statement;
...
statement; end
else begin
...
end;
Ich gebe zu, das es den Code ein bisschen weniger bequem machen zu ändern. Es ist nur, dass ich die 'baumelnden' end
in der Mitte einer if
Aussage finde, und ausgerichtet wie die if
, etwas verwirrend. Wenn es end
ist, muss es das letzte sein (für die Aussage), andernfalls erwarte ich entweder else
oder den Anfang der nächsten Aussage an dieser Position.
Und ich lasse es normalerweise nicht sein, wenn der then
Block zusammengesetzt ist, aber der else
man ist eine einzelne Aussage. Das ist nie eine große Sache mit mir, um den Zustand zu invertieren und die Blöcke neu anzuordnen. Noch mehr, da ich ziemlich tight bin, wenn es darum geht, eine einzige Aussage mit begin ... end
s einzuwickeln. Aus meiner Sicht und Erfahrung, sind reichlich 'Anfang-Ende sind überflüssig' Anfang oft mehr als nicht. Obwohl ich es mag, wenn eine Aussage ein explizites Schlusswort hat, so sind meine case
und repeat
meine absoluten Favoriten. :)
Eine weitere Sache über if
s (und while
s für diese Angelegenheit) ist, dass im Falle eines zig Decker Zustand neige ich then
(do
) in der nächsten Zeile platzieren und ausgerichtet auf die Start Schlüsselwort Aussage .
So:
if (some_long_conditional_expression) or
(some_other_long_conditional_expression) or
(some_even_longer_conditional_expression)
then
Exit;
Auch gibt es einige andere Dinge hier bereits erwähnt, die ich keine Ausländer bin, wie einzeilig else if
s (bei Bedarf) oder for ... do with ... do try
s (ja, das kann wieder habe etwas mit meiner oben erwähnten engen Fisting-Natur zu tun).
Im Großen und Ganzen würde ich wahrscheinlich zu viel auf Code-Hervorhebung und Einrückung, vor allem der letzteren, verlassen. Vielleicht würde ich, wenn es nicht für den Einzug wäre, bevorzugen, immer die begin
s herauszugreifen.
Ein weiterer Punkt: jemand Formatierungsstil kann sehr wahrscheinlich durch ihren Programmierstil verursacht werden. Manche Leute hassen sehr große Routinen und tendieren zu Faktoren, wann immer es möglich ist, während andere sich lieber auf den Code selbst konzentrieren und diese verschiedenen bildschirmübergreifenden zusammengesetzten Blöcke nicht beachten - ich finde, dass dies sehr unterschiedliche Ansätze sind, die zu unterschiedlichen Formatierungsgewohnheiten führen können .
Das ist fast genau die Art von Frage, die Jeff im Abschnitt "Welche Art von Fragen soll ich hier nicht stellen?" In der FAQ beschreibt. –
Sieht mich überhaupt nicht falsch an. Code-Formatierung ist wichtig. – gabr
Ich denke, solange die Diskussion um die Vor- und Nachteile jedes Formats geht, ist es in Ordnung. Heck, Code Complete (eines von Jeffs Lieblingsbüchern) behandelt Code-Formatierung in der Tiefe, so offensichtlich ist es verantwortlich. –