Regel
Vermeiden Sie übermäßig große Dateien.
Große Dateien mit mehreren Verantwortlichkeiten
sind schwer zu pflegen.
Unterstützte Sprachen: 45+Einführung
Dateien, die Tausende von Zeilen umfassen, befassen sich in der Regel mit mehreren nicht zusammenhängenden Problemen, was es schwierig macht, bestimmte Funktionen zu finden. Eine 3000-Zeilen utils.js Datei, die Validierungshilfen, String-Formatierung, Datumsmanipulation und API-Dienstprogramme enthält, zwingt die Entwickler dazu, durch nicht zusammenhängenden Code zu blättern, um das zu finden, was sie brauchen. Große Dateien führen auch zu Konflikten bei der Zusammenführung, da mehrere Entwickler gleichzeitig verschiedene Abschnitte ändern.
Warum das wichtig ist
Wartbarkeit des Codes: Große Dateien vermischen nicht zusammenhängende Funktionen, so dass Entwickler Hunderte von Zeilen irrelevanten Codes verstehen müssen, um eine Funktion zu ändern. Die Suche nach einer bestimmten Logik wird zu einer Suchübung, anstatt zu einer entsprechend benannten Datei zu navigieren.
Konflikte bei der Versionskontrolle: Wenn mehrere Entwickler an verschiedenen Funktionen in derselben großen Datei arbeiten, kommt es häufig zu Konflikten bei der Zusammenführung. Kleinere, konzentrierte Dateien ermöglichen eine parallele Entwicklung, da jeder Entwickler in separaten Dateien arbeitet.
Effizienz der Codeüberprüfung: Die Überprüfung von Änderungen in großen Dateien erfordert mehr Kontext. Die Prüfer müssen verstehen, wie sich Änderungen auf anderen, nicht verwandten Code in derselben Datei auswirken. Kleinere Dateien machen den Umfang der Änderungen deutlich und beschleunigen die Überprüfung.
Code-Beispiele
❌ Nicht konform:
// utils.js (über 1500 Zeilen)
Funktion validateEmail(E-Mail) { /* ... */ }
Funktion validatePhone(Telefon) { /* ... */ }
Funktion formatCurrency(Betrag) { /* ... */ }
Funktion formatDate(Datum) { /* ... */ }
Funktion parseJSON(str) { /* ... */ }
Funktion apiRequest(url) { /* ... */ }
Funktion Entprellung(fn, Verzögerung) { /* ... */ }
Funktion Drossel(fn, Grenze) { /* ... */ }
// ... 100+ weitere nicht verwandte Funktionen
Warum das falsch ist: Eine große Datei enthält Validierungs-, Formatierungs-, Parsing-, API-Aufrufe und Leistungsdienstprogramme. Suche nach entprellen() erfordert das Blättern durch Hunderte von nicht zusammenhängenden Funktionen. Wenn mehrere Teams diese Datei ändern, kommt es ständig zu Konflikten bei der Zusammenführung.
✅ Konform:
// validation/email.js
exportieren Funktion validateEmail(E-Mail) { /* ... */ }
// validierung/phone.js
exportieren Funktion validatePhone(Telefon) { /* ... */ }
// formatierung/waehrung.js
exportieren Funktion formatCurrency(Betrag) { /* ... */ }
// formatierung/datum.js
exportieren Funktion formatDate(Datum) { /* ... */ }
// api/request.js
exportieren Funktion apiRequest(url) { /* ... */ }
// leistung/debounce.js
exportieren Funktion debounce(fn, Verzögerung) { /* ... */ }
Warum das wichtig ist: Jede Utility-Funktion befindet sich in einer eigenen Datei in kategorisierten Verzeichnissen. Suche nach entprellen() bedeutet die Navigation zu leistung/debounce.js direkt. Teams, die an verschiedenen Hilfsprogrammen arbeiten, geraten nicht in Konflikt, weil sie in getrennten Dateien stehen.
Schlussfolgerung
Halten Sie Dateien nach Möglichkeit unter 500 Zeilen. Bei Dateien, die diesen Wert überschreiten, sollten Sie nach eindeutigen Zuständigkeiten suchen, die in separate Module extrahiert werden können. Organisieren Sie zusammengehörige Dateien in Verzeichnissen, um die Struktur beizubehalten, während die einzelnen Dateien konzentriert und wartbar bleiben.
.avif)
