Technische Gründe hinter C Programmierstil?
In der Dokumentation vom Linux Kernel Source Code, Torvalds schrieb über den Programmierstil welcher für den Quellcode benutzt wird und sagt unter anderem:
The other issue that always comes up in C styling is the placement of braces. Unlike the indent size, there are few technical reasons to choose one placement strategy over the other, but the preferred way, as shown to us by the prophets Kernighan and Ritchie, is to put the opening brace last on the line, and put the closing brace first, thusly:
Auf was genau ich hinaus will ist hier gemeint
Unlike the indent size, there are few technical reasons to choose one placement strategy over the other
Was genau sind diese Technischen Gründe und wie wirken diese sich aus?
Der Link zur Dokumentation und dem jeweiligen Abschnitt:
3 Antworten
Technisch macht es nahezu keinen Unterschied wo du die Klammer setzt. Evtl. wird der Sourcecode je nach Formattierung etwas größer oder kleiner, aber das ist zumeist vollkommend vernachlässigbar.
Da die Formatierung für den Compiler nicht relevant ist, kann es ansich keine technischen Gründe geben, die für das eine oder andere sprechen.
Wenn ich in technische Gründe sowas wie die Displaygröße einbezöge, dann kann sich der eine oder andere Style vorteilhaft erweisen.
Technische Gründe gibt es da keine. Es geht nur um die Übersichtlichkeit.
Ich z.B. schreibe
if(a == b) {
irgendwas;
} else {
irgendwas_anderes;
}
Ein Kollege von mir schreibt stattdessen
if(a == b)
{
irgendwas;
}
else
{
irgendwas_anderes;
}
Darüber kann man sich streiten, muss man aber nicht 😉.
Und "IDEs" wie VisualStudio, die den oberen Code automatisch wie unten formatieren, sollte man einfach mal verbieten.
VisualStudio wirkt auf mich so, als ob MS da aktiv versucht, den Entwicklern das Leben schwer zu machen. Am besten finde ich, dass eine Datei, die du in VS löschst, nicht auch auf dem Dateisystem verschwindet. Datei löschen, andere Datei mit selben Namen erstellen -> "die Datei kann nicht hinzugefügt werden, weil eine andere Datei mit dem selben Namen schon existiert". WTF. Biete mir doch wenigstens an, die Datei jetzt wirklich zu löschen?!
Meine Lösung für das Problem war, einfach eine andere IDE (und ein anderes Betriebssystem) zu verwenden.
Dem Kollegen gerne mal während der Kaffeepause unbemerkt ein Codeformatter-Plugin in der IDE installieren, dass solche "Fehler" beim Speichern automatisch korrigiert ;)