Wenn ich mir die Antworten ansehe, hat niemand explizit die Art von Praxis genannt, die ich mir zur Gewohnheit mache, nämlich die Geschichte des Codes zu erzählen:
int j = 0;
for (int i = 0 ; i < 100 ; ++i)
{
if (i % 2 == 0)
{
j++;
}
}
Wird:
int j = 0;
for (int i = 0 ; i < 100 ; ++i)
{
if (i % 2 == 0) j++;
}
Die Umsetzung der j++
über die gleiche Linie als die si an andere Personen weitergeben sollte, "Ich will nur, dass dieser Block immer größer wird j
" . Dies ist natürlich nur dann sinnvoll, wenn die Zeile so einfach wie möglich ist, denn das Setzen eines Haltepunkts an dieser Stelle, wie peri erwähnt, wird nicht sehr nützlich sein.
Tatsächlich bin ich gerade auf einen Teil der Twitter Storm API gestoßen, der diese Art von Code in Java enthält. Hier ist der entsprechende Ausschnitt aus dem ausgeführten Code, auf Seite 43 dieser Diashow :
...
Integer Count = counts.get(word);
if (Count=null) count=0;
count++
...
En für Schleife Block hat zwei Dinge in ihm, so würde ich nicht inline, dass Code. I.e., niemals :
int j = 0;
for (int i = 0 ; i < 100 ; ++i) if (i % 2 == 0) j++;
Es ist furchtbar, und ich weiß nicht einmal, ob es (wie beabsichtigt) funktioniert; Tun Sie das nicht . Neue Zeilen und geschweifte Klammern helfen dabei, getrennte, aber zusammenhängende Teile des Codes zu unterscheiden, so wie es ein Komma oder ein Semikolon in der Prosa tun. Der obige Block ist wie ein sehr langer Satz mit einigen Klauseln und einigen anderen Aussagen, die nie unterbrochen werden, um einzelne Teile zu unterscheiden.
Wenn Sie wirklich jemandem mitteilen wollen, dass es sich um einen einzeiligen Auftrag handelt, verwenden Sie einen ternären Operator oder ?:
Form:
for (int i = 0 ; i < 100 ; ++i) (i%2 ? 0 : >0) j++;
Aber das grenzt schon an Code-Golf und ich denke, es ist keine gute Praxis (es ist mir nicht klar, ob ich die j++ auf eine Seite der :
oder nicht). NB Ich habe noch nie einen ternären Operator in C++ ausgeführt, und ich weiß nicht, ob das funktioniert, aber es gibt sie doch .
Kurz gesagt:
Stellen Sie sich vor, wie Ihr Leser (d. h. die Person, die den Code pflegt) Ihre Geschichte (den Code) interpretiert. Machen Sie es für ihn so klar wie möglich. Wenn Sie wissen, dass ein unerfahrener Programmierer/Student den Code pflegt, lassen Sie vielleicht sogar so viele {}
wie möglich, damit sie nicht verwirrt werden.