Konvention über Konfiguration ist eines der Grundprinzipien von LessCode und ist in entsprechenden Programmiersprachen und Frameworks häufig anzutreffen. „Implizit statt explizit“ ist hierbei die Devise.
Ein typisches Beispiel für Konvention ist, dass eine Tabelle und eine Spalte in einer relationalen Datenbank genau so heisst wie die Klasse und deren Zugriffsmethode darauf.
Konventionen haben zwar den Nachteil, dass man sie lernen muss, aber den Vorteil, dass sie ohne weiteres Zutun einfach funktionieren, selbst wenn man die Details dazu nicht kennt.
Zwei Dinge sind dabei wichtig:
- die Konvention sollte intuitiv und gut dokumentiert sein. Wenn sich eine Konvention „einfach gut“ anfühlt dann ist man auf dem richtigen Weg.
- die Konvention muss sich abändern lassen, wenn es der Entwickler anders haben möchte. Denn nicht immer soll eine Klasse genau so heissen wie die DB-Tabelle. Dann braucht man weitere Mechanismen, um diese Konvention zu überschreiben: per Konfiguration.
Der LessCoder freut sich dabei jedoch über eine ebenfalls intuitive Art der Konfiguration. Annotationen in Java sind hierbei eine gute Sache genauso wie z.B. eine einzeilige Anweisung in Ruby on Rails, mit der sich ebenfalls z.B. eine Modellklasse auf eine andere DB-Tabelle mappen lässt.
Wichtig dabei ist, dass die Möglichkeit zur Konfiguration gegeben ist. Eine Notwendigkeit zur Konfiguration wäre nicht DRY.
451p46
i7k8tl
jk7vv1