Wir sind zwar hier in einem Pascalforum, aber ich komme von C/C++ was ich embedded immernoch zu 50% meiner Zeit programmiere.
Seit 20Jahren schreibe ich C/C++ so, auch wenn es wegen der mit eingerückten Blockklammern nicht dem StandardStyleGuide entspricht:
Code:
if(test()==value)
{
test_true();
}
if(irgendwas()==value)
{
machwas_true();
}
else
{
machwas_false();
}
//und dann weiter mit irgendetwas
In C finde ich die zusätzlichen Zeilen mit nur einer Klammer gut, aber Pascal/Delphi mag ich wegen der oft eh etwas ausführlicheren Schreibweise das nicht und mache es einheitlich so:
Code:
if(test()=value) then begin
test_true();
end;
if(irgendwas()=value) then begin
machwas_wenn_true();
end else begin
machwas_wenn_false();
end;
//und dann weiter mit irgendetwas
Ich bin der Meinung, solange man IMMER einheitlich innerhalb einer Sprache formatiert, kann jeder der es es "will" dies auch lesen und verstehen, StyleGuides hin oder her.
Innerhalb einer Funktion/Procedure muss die Formatierung einheitlich sein, aber ich kann in Quelltexten wo zig Leute einzelne Klassenmethoden ausprogrammieren sogar Vorteile sehen, wenn ich über die Formatierung erkenne, wer es gemacht hat.
Wir handhaben das sehr locker ohne großen Zwang, solange jede Formatierung zumindest in sich klar & logisch erklärbar ist&bleibt. Klar kann man auch bzgl. Formatierung was komentieren, aber bei uns hat es sich nicht durchgesetzt.
Das z.B. typische und aus meiner Sicht viel wichtigere Problem, ob man jede Funktion/Procedure mit nur "einem Result=" bzw. "einem Exit" ganz am Ende verlassen soll, oder ob es anfangs mehrere "If Blöcke" geben kann, welche jeweils direkt die Funktion/Procedure verlassen... wir bevorzugen die Variante mit mehreren Exits!... das ist einfach nachträglich besser erweiterbar, als ewig immer tiefere If(+Else) Schachtelungen... lieber 8 ausprogrammierte "IFs ohne Else", als 2^3 geschachtelte "if-then-else"!
Das sind bei uns so die "grundsätzlichen" Fragen... Anonyme Methoden verwenden wir nun auch, schreiben da aber möglichst nur einen Aufruf einer "woanders normal" geschriebenen Procedure hinein... das darf dann sogar mal in nur einer "inline" Zeile sein.
Ich schreibe grundsätzlich in Pascal/Delphi pragmatisch immernoch so, wie ich es schon immer auch in C/C++ ohne "lokale Funktionen/Proceduren" hätte schreiben müssen. Die Kollegen der reinen Delphi Fraktion haben mich deshalb bisher noch nicht gesteinigt