Institutionen för informationsteknologi

Kodstandard

För att era inlämningsuppgifter ska rättas krävs att ni följer denna kodstandard. Den är utformad för att ge lättläst kod och för att minimera risken för onödiga buggar i koden.
I stort kan man säga att kodstandarden ges av den exempelkod ni fått ut. Alla konstruktioner som ni behöver för att lösa uppgifterna finns där. Funktioner, if- och switch-satser, loopar, kommentarer, variabler och konstanter. Skriv er kod så att den ser ut som den givna koden.
För säkerhets skull ges några punkter nedan som ni förväntas följa.

  • variabler och funktionsnamn skrivs med små bokstäver rakt igenom. Jag kan även tänka mig att acceptera små bokstäver med stor bokstav i början av ett nytt ord. Båda konventionerna är vanliga i verkligheten. Tillåtna varianter är alltså: dettaärenvariabel och dettaÄrEnVariabel.
  • KONSTANTER skrivs med STORA bokstäver. Det är tillåtet att använda understreck _ för att separera ord.
  • Indentera koden med tre eller fyra blanksteg. (Var konsekvent!)
  • Inga kodrader får vara längre än 80 tecken!
  • Städa bort testkod och gammal kod innan ni lämnar in. Det får inte förekomma stora stycken bortkommenterad kod eller kod som skriver ut debug-information i inlämningen.
  • Följande placering av "måsvingar" är tillåten (ingen annan):
if ( ... ) {
...;
}
eller
if ( ... )
{
...;
}
Måsvingar som inleder en funktion skall alltid vara på en egen rad!
  • Sätt mellanslag runt operatorer och efter komma.
Rätt: a = b + c;
Fel: a=b+c;
Rätt: foo(bar, 42);
Fel: foo(bar,42);
  • Avsluta loopar med hjälp av loop-vilkoret! Det finns alltid ett snyggt sätt att avsluta en loop som gör att man med en gång kan se vad koden gör. Oändliga loopar som avbryts på olika sätt inne i loop-kroppen ger svårläst kod och ökar risken för buggar och är därför inte tillåtna under denna kurs!
Rätt: while (x != 5) { ... }
Fel: while ( 1 ) { if (x == 5) break; }

Denna kodstandard må vara skriven i sten, men det betyder inte att jag inte kan tänka mig att ändra på den om någon har en tillräckligt bra motivering.

Uppdaterad  2007-02-08 23:26:06 av Jesper Wilhelmsson.