Welche Klammeranordnung bevorzugt IHR

Da ich mit Basic angefangen habe und auch viel mit Toolbook OpenScript mache (kennt das eigentlich jemand?), hab ich die dort üblichen Formatierungen (ohne Klammern) auch für C, Java, PHP und auch HTML übernommen. Das heißt: Variante 1.
PHP:
// Diese Funktion tut dies und das..
function doSomething(param1, param2) {
    
    // Code;
    
    if (bedingung) {
        // Code;
    } else {
        // Code;
    }
    
    // Einzeiler
    if (bedingung) x = y;
    
} // end doSomething
Einrücken tu ich in allen Sprachen immer mit 1 Tab. Je nach Entwicklungsumgebung werden daraus Leerzeichen (wenn sich's einstellen lässt: 4) oder es bleibt ein Tab-Zeichen.

Kommentare, was eine Funtion oder Klasse tut oder wie man sie verwendet schreibe ich immer über die Funktion. Natürlich versuche ich mich zusammenzureißen und auch sonst schön alles was nicht ganz offensichtlich ist zu kommentieren (manchmal bin ich aber auch zu faul, das rächt sich dann aber fast immer).

Nach langen Blöcken habe ich mir angewöhnt, hinter die schließende Klammer einen Kommentar zu platzieren, was da geschlossen wird.

Einzeilige If-Bedingungen mach' ich ohne Klammern. In Sprachen, die keine Einzeiler kennen (z.B. OpenScript) mach ich das auch manchmal mit dem Zeile-Ende-Zeichen, wenn's nicht allzu arg der Übersichtlichkeit schadet.
Code:
-- OpenScript-Einzeiler:
if x = y; set a = b; end if

Außerdem achte ich drauf, dass logisch zusammengehörige Code-Teile ohne Leerzeilen zusammenhängen und verwende Leerzeilen als Trenner zwischen solchen Teilen.

Ich finde, diese Schreibweise ist ein guter Kompromiss zwischen Übersichtlichkeit und Zeilenanzahl (schließlich will ich nicht ewig lang hoch- und runterscrollen).
Da wir hier zu dritt zum Teil an den gleichen Projekten arbeiten, haben die anderen beiden diese Schreibweise übernommen und denen gefällt's so auch am besten.

Schönes Wochenende,
Martin
 
Hi.

Jede Klammer in eine neue Zeile, bei kurzen IFs mit nur einer Anweisung, Klammernlos.
Einrücken mit Tab, finde gibt nichts schlimmeres als Leerzeichen. Tabgröße auf 4 Leerzeichen.

Code-Snippet:
Code:
private void RefreshConnectionTree()
{
	this.tVConnections.Nodes.Clear();
	NodeToServer.Clear();

	foreach (Connection server in ConManager.GetServer())
	{
		string name = server.ConnectionData.Hostname;

		TreeNode parent = new TreeNode(name);
		parent.ImageIndex = 0;
		parent.SelectedImageIndex = 0;
		parent.NodeFont = new Font(this.Font.FontFamily.Name, this.Font.Size,FontStyle.Bold);
		NodeToServer.Add(parent,server);

		if (server.Registered)
		{
			this.Invoke(this.AddTreeNode,new object[]{parent});

			ChannelList cl = ConManager.GetChannelList(server);		

			foreach (string Channel in cl.GetChannels())
			{
				TreeNode child = new TreeNode(Channel);
				child.ImageIndex = 1;
				child.SelectedImageIndex = 1;
				parent.Nodes.Add(child);
			}
		}		

	}

	this.tVConnections.ExpandAll();
}

MfG,
Alex =)
 
Zuletzt bearbeitet:
Also ich halte das ganze so:

Code:
sub foobar
{
    if ($condition) {
        while ($condition) {
            for(;;) { } # single-line
        }
    }
}

Die geschweifte Klammer ist im Fall einer Subroutine/Funktion unterhalb der einleitenden Worte, ansonsten dahinter (if, while, for, do...). Ansonsten Alex' Standpunkt, Tabs mit der Breite von 4 Blanks...

Keine Ahnung wie geschickt das ist, aber mir gefällt es so.
 

Neue Beiträge

Zurück