Alle Originalinhalte werden auf Ukrainisch erstellt. Noch nicht alle Inhalte wurden übersetzt. Einige Beiträge sind möglicherweise nur auf Ukrainisch verfügbar.Mehr erfahren
Was ist Convention over Configuration (im Kontext von RoR und nicht nur)?
Konvention vor Konfiguration (CoC) — ist ein Prinzip, das besagt, dass ein System oder Framework bereits Standardkonfigurationen hat, die es dem Entwickler ermöglichen, das Schreiben / Erstellen von Einstellungen selbst zu vermeiden. Dies reduziert erheblich die Anzahl der Entscheidungen, die getroffen werden müssen, und verringert die Zeit für Konfiguration und Entwicklung insgesamt.
Dieser Ansatz gewann erstmals durch das Framework Ruby on Rails an Popularität. Der Grundgedanke von Rails ist, dass die meisten Entwickler ähnliche Aufgaben auf ähnliche Weise erledigen werden. Daher bietet Rails typische Lösungen wie die Strukturierung von Dateien, die Benennung von Modellen, Controllern und Datenbanken. Wenn man sich an die vereinbarten Konventionen hält, konfiguriert das System automatisch viele Aspekte der Anwendung. Zum Beispiel wird ein Modell mit dem Namen Article automatisch der Tabelle articles in der Datenbank zugeordnet, ohne dass zusätzliche Konfiguration erforderlich ist.
Dies befreit den Entwickler von routinemäßiger Konfiguration. Ausnahmen, bei denen Individualisierung erforderlich ist, können leicht separat konfiguriert werden, jedoch kann der Großteil der Aufgaben schneller erledigt werden, indem man auf vordefinierte Konventionen zurückgreift.
Die Befreiung von übermäßiger Konfiguration ermöglicht es, sich auf die Logik der Anwendung zu konzentrieren und nicht auf die Einstellungen. Dies beschleunigt die Entwicklung und verringert die Anzahl der Fehler, da weniger Konfigurationen weniger Stellen bedeuten, an denen ein Fehler auftreten kann. Gleichzeitig kann dieser Ansatz auch außerhalb von Rails gefunden werden. Viele moderne Frameworks und Tools verwenden einen ähnlichen Ansatz — von JavaScript-Bibliotheken bis hin zu Infrastrukturverwaltungssystemen.
CoC ist einer der Schlüsselansätze zur Vereinfachung des Entwicklungsprozesses, bei dem Anwendungen, die den festgelegten Konventionen entsprechen, minimale Konfiguration erfordern und der Entwickler mehr Freiheit hat, Funktionalitäten zu erstellen, anstatt sich mit kleinen Einstellungen zu beschäftigen.
Beispiel CoC (RoR)
Schauen wir uns ein Beispiel für CoC etwas genauer an, um zu verstehen, wo genau wir Zeit sparen und die Wahrscheinlichkeit von Fehlern durch hinzugefügten benutzerdefinierten Code verringern.
Der Entwickler erstellt ein Modell – zum Beispiel das Modell Article in Rails.
Da Konvention vor Konfiguration die Verwendung von Konventionen vorsieht, erwartet Rails automatisch, dass die Tabelle für dieses Modell articles heißt (Standardplural für englische Substantive).
Rails verbindet automatisch dieses Modell mit der Tabelle articles in der Datenbank, ohne dass zusätzliche Einstellungen erforderlich sind. Wenn die Konvention passt, ist keine zusätzliche Konfiguration notwendig.
Dieser Ansatz befreit von überflüssiger Konfiguration, da das System auf typischen Einstellungen basiert.
Einfach ausgedrückt - das Framework hat bereits allgemeine Konfigurationen, die man nicht selbst erfinden muss, sondern einfach den Konventionen folgen sollte, damit alles "out of the box" funktioniert.