Skip to content

Coding Standards

David Schlereth edited this page Jun 2, 2020 · 12 revisions

Zu Beginn unseres Projektes einigten wir uns auf folgende Coding Standards:

Leerzeichen

  • keine Leerzeichen nach: ( [ {
  • keine Leerzeichen vor: ) ] }
  • keine Leerzeichen vor :
  • Leerzeichen nach :
  • Leerzeichen bei Deklaration temporärer Variablen: | var |
  • Leerzeichen um @
  • Leerzeichen um Rechenzeichen (außer bei Brüchen /)
  • Leerzeichen nach ^
  • Leerzeichen um := , = , < , > , <= , >= und -> - ] am Ende einer Schleife/Verzweigung (nicht) in separate Zeile

Leerzeilen

  • Leerzeile nach Methodennamen bzw. Deklaration der Methodenvariablen
  • Leerzeile nach Deklaration temporärer Variablen
  • einzelne Leerzeile am Ende von Methoden oder Dokumenten

Punktierung

  • kein Punkt in der letzten Zeile
  • kein Punkt nach der letzten Anweisung innerhalb von [ ]

Klammerung

  • Klammern um Points, zB: (69 @ 42)
  • Bedingung geklammert

Kaskadenaufrufe:

PieChart new
  radius: self defaultRadius;
  chartCenter: self defaultWorldPosition;
  extent: self defaultExtent.

Verzweigungen:

  • Bedingung geklammert
  • ifTrue und ifFalse in neue Zeile
(aName isEmpty) 
  ifTrue: [datasetName := 'Dataset', self datasetCount]
  ifFalse: [datasetName := aName].

English Version

Spaces

  • no spaces after: ( [ {
  • no space before: ) ] }
  • no space before :
  • space after :
  • spaces when declaring temporary variables: | var |
  • spaces around @
  • spaces around mathematical symbols (except for fractions /)
  • space after ^
  • space around := , = , < , > , <= , >= and -> - ] at the end of loops/conditionals/branching (not) in seperate line

Empty Lines

  • empty line after method name or method variable declaration
  • empty line after temporary variable declaration
  • single empty line at the end of the method or document

Punctuation

  • no point at the end of the last line
  • no point after the last command inside [ ]

Brackets

  • brackets around points, i.e.: (69 @ 42)
  • brackets around conditions

Cascading:

PieChart new
  radius: self defaultRadius;
  chartCenter: self defaultWorldPosition;
  extent: self defaultExtent.

Branching:

  • brackets around conditions
  • ifTrue and ifFalse on new line
(aName isEmpty) 
  ifTrue: [datasetName := 'Dataset', self datasetCount]
  ifFalse: [datasetName := aName].

Changes

template: dd/mm/yy - changes

  • 02/06/20 - changed layout, added categories for better readability, added english version
  • 23/05/20 - added 'single empty line at the end of the method or document'
Clone this wiki locally