Pochi giorni fa stavo discutendo su come si indenta un codice Ansi/C e di conseguenza se è possibile usare lo stesso stile in linguaggi differenti.
Ovviamente l’indentazione è come la mamma, ognuno ha la sua e ne decanta i vantaggi e si sa: la mamma non si tocca!
Oggi, cercando informazioni su wikipedia mi imbatto in questa pagina: Indent Style dove vengono illustrate le più comuni tecniche di indentazione, eccovi un piccolo sunto:
* K&R style
//... if (x < 0) { printf("Negative"); negative(x); } else { printf("Positive"); positive(x); }
* Allman style (bsd in Emacs)
while(x == y) { something(); somethingelse(); } finalthing();
* BSD KNF style
while (x == y) { something(); somethingelse(); } finalthing();
* Whitesmiths style
while (x == y) { something(); somethingelse(); } finalthing();
* GNU style
while (x == y) { something (); somethingelse (); } finalthing ();
* Horstmann style
while (x == y) { something(); somethingelse(); //... if (x < 0) { printf("Negative"); negative(x); } else { printf("Positive"); positive(x); } } finalthing();
* Pico style
stuff(n):
{ x: 3 * n;
y: doStuff(x);
y + x }
* Banner style
function1 () { dostuff do more stuff } function2 () { etc }
E voi quale usate?
Posted under Tecnologia
This post was written by admin on November 4, 2008






mancano però i linguaggi con l’indentazione obbligata come python o… Cobol.
Configurazione:
Tab in spaces (odio il carattere \t)
Indentazione di 2 caratteri
Stili:
GNU Style per tutto il codice
Pico Style per brevi metodi di codice boilerplate (tipo setter/getter et similia)
GNU Style tutta la vita, anche perchè ho iniziato con il Pascal
BSD style per if/while e simili! Invece per il corpo delle funzioni Allman style.
Questo invece come si chiama? Non è in lista
if (condition) {
something();
} else {
something_else();
}
A volte lo uso.
Ops scusate, mi era sfuggito il primo in lista
Correggete pure il commento di prima!
Sono anziano, quindi K&R.
Anche se il codice tende ad essere spostato troppo a destra…
if( condition )
{
….
….
….
} else {
….
….
….
}
K&R style