Öppna Mike Fästen

Allman eller K & R? Det här är Open Mike, en serie diskussionsposter för att kasta katten bland duvorna. Dessa inlägg handlar om dig - vi vill höra era åsikter, idéer och tankar. För att sparka upp saker, låt oss prata om konsoler.


1: Kramar du?

"Cuddling" braces betyder att skriva dem så här:

 funktion showCuddlingExample (): void if (example) // gör något annat // gör något annat

Alternativt finns Allman-stil:

 funktion showAllmanExample (): void if (example) // gör något annat // gör något annat

Den här Wikipedia-posten visar andra vanliga stilar. Vilket använder du?

Jag gillar Allman eftersom du kan göra det här:

 // om (someCondition) doSomething (); 

Jag kan enkelt ändra den villkorliga kontrollen genom att helt enkelt kommentera "if" -förklaringen. Om jag knuffade, skulle jag antingen skriva en ny spärr för att ersätta "if", eller kommentera motsvarande stängningsstång.


2: Stöder du din pareses?

Jämför alla dessa:

 // tight funktion exampleFunction (arg1: int, arg2: String): void
 // space före parentes funktion exampleFunction (arg1: int, arg2: String): void
 // mellanslag mellan variabel- och typfunktionsexempelFunktion (arg1: int, arg2: String): tomrum
 // vadderade parenteser funktion exampleFunction (arg1: int, arg2: String): void

Jag har sett alla dessa, i olika kombinationer. Jag brukade använda "vadderade parenteser", eftersom det verkade lättare att se argumenten och deras typer, men nu föredrar jag "tight". Hur är det med dig?


3: Stör dig i näsan i villkoren?

För mig känns det som "korrekt" att skriva:

 om ((villkor1) || (villkor2))

… hellre än:

 om (villkor1 || villkor2)

... även om den första tar upp mycket mer utrymme. Parametrarna klargör var separationen ligger. Men är den lilla skillnaden värt det?

En sista sak: tack vare Sergio från www.artua.com för den fantastiska mikrofonikonen!