Namenskonventionen in der Programmierung
Namenskonventionen sind Vereinbarungen darüber, wie Identifier-Namen in Code formatiert werden. Das Befolgen von Konventionen verbessert die Lesbarkeit, reduziert kognitive Belastung und lässt Code professionell wirken. Diese Anleitung erklärt die wichtigsten Konventionen und wann sie verwendet werden sollten.
camelCase
camelCase ist charakterisiert durch kleingeschriebene Anfangsbuchstaben mit Großbuchstaben am Anfang jedes nachfolgenden Wortes: firstName, getUserById, calculateTotalPrice. Die Großbuchstaben erzeugen "Höcker" in der Mitte von Namen, die an einen Kamelrücken erinnern. Wo es verwendet wird: JavaScript und TypeScript verwenden camelCase für Variablen, Funktionen und Objekteigenschaften nach Konvention. Java verwendet es für Methoden und Variablen. Es ist auch üblich in JSON-Eigenschaftsnamen und einigen API-Antwortformaten. Warum es funktioniert: camelCase ist kompakt (keine Trennzeichen), unterscheidbar von PascalCase (das Klassen/Typen signalisiert) und einfach auf jeder Tastatur zu tippen. Die Großbuchstaben bieten klare Wortgrenzen ohne zusätzliche Zeichen. Häufige Fehler: Inkonsistente Großschreibung (getUSERData vs getUserData), Verwendung für Klassennamen (sollte PascalCase sein) oder Mischen mit snake_case in derselben Codebase. Der Umgang mit Akronymen wird diskutiert. Einige bevorzugen HTTPServer, andere HttpServer. Für Konsistenz empfehlen viele Styleguides, Akronyme als Wörter zu behandeln, wenn sie nicht am Anfang stehen: httpServer, xmlParser, userId.
PascalCase
PascalCase (auch UpperCamelCase genannt) schreibt den ersten Buchstaben jedes Wortes groß einschließlich des ersten: FirstName, UserAccount, HttpRequestHandler. Benannt nach der Programmiersprache Pascal, wo diese Konvention entstanden ist. Primäre Verwendung: Klassen- und Typnamen in den meisten objektorientierten Sprachen. Wenn Sie PascalCase im Code sehen, signalisiert es typischerweise "dies ist ein Typ/eine Klasse, keine Variable oder Funktion." Diese visuelle Unterscheidung hilft beim Code-Verständnis. Wo es Standard ist: TypeScript und JavaScript Interfaces und Type-Aliase. React-Komponentennamen (obligatorisch – Kleinbuchstaben würden als HTML-Elemente interpretiert). C# verwendet PascalCase für Klassen, Methoden und Properties. Java verwendet es für Klassennamen. Unterschied zu camelCase: Das erste Zeichen sagt Ihnen, womit Sie es zu tun haben. userService (camelCase) ist eine Instanz oder Variable. UserService (PascalCase) ist eine Klasse oder ein Typ. Dieses Muster funktioniert sprachübergreifend und hilft Lesern, Code-Struktur auf einen Blick zu verstehen. Dateinamen folgen oft der Komponentenbenennung: UserProfile.tsx enthält die UserProfile-Komponente. Diese Konvention ist besonders verbreitet in React-Projekten.
snake_case
snake_case verbindet Wörter mit Unterstrichen und verwendet durchgehend Kleinbuchstaben: first_name, get_user_by_id, calculate_total_price. Die Unterstriche machen Wörter klar unterscheidbar, ohne auf Großschreibung angewiesen zu sein. Wo es Standard ist: Python setzt snake_case für Funktionen, Variablen und Module ein (PEP 8 Styleguide). Ruby verwendet es durchgehend. PostgreSQL und viele Datenbanken verwenden snake_case für Tabellen- und Spaltennamen. C verwendet es für Funktions- und Variablennamen in vielen Codebases. Vorteile: Maximale Lesbarkeit – Unterstriche wirken wie Leerzeichen zwischen Wörtern. Keine Probleme mit Groß-/Kleinschreibung – alles ist kleingeschrieben. Funktioniert in Kontexten, wo Groß-/Kleinschreibung verloren gehen oder verstümmelt werden könnte. Einfach in andere Formate zu konvertieren. UPPER_SNAKE_CASE (SCREAMING_SNAKE_CASE) ist snake_case mit durchgehend Großbuchstaben: MAX_CONNECTIONS, DEFAULT_TIMEOUT, API_BASE_URL. Nahezu universell für Konstanten in allen Sprachen. Die Großbuchstaben signalisieren "dieser Wert sollte nicht modifiziert werden." Wenn Python auf JavaScript trifft: APIs brauchen oft Konvertierung. Python-Backends könnten snake_case (user_id) zurückgeben, während JavaScript-Frontends camelCase (userId) bevorzugen. Viele Projekte enthalten Konvertierungsutilities oder Serializer, die diese Übersetzung automatisch handhaben.
kebab-case
kebab-case verbindet Wörter mit Bindestrichen und verwendet durchgehend Kleinbuchstaben: first-name, get-user-data, button-primary. Genannt "Kebab", weil Wörter durch Bindestriche "aufgespießt" sind wie Fleisch auf einem Kebab-Spieß. Primäre Verwendung in CSS: kebab-case ist die Standard-Konvention für CSS-Klassennamen und Custom Properties: .user-profile, .button-primary, --main-color. Der Bindestrich macht Klassennamen lesbar und ist gültig in CSS-Selektoren. URL-Slugs: Web-URLs verwenden kebab-case für Lesbarkeit: /blog/wie-man-sauberen-code-schreibt. Bindestriche sind URL-sicher, trennen Wörter klar und sind lesbar. Unterstriche können mit Leerzeichen verwechselt werden, wenn URLs unterstrichen sind. Warum nicht in den meisten Programmiersprachen: Das Bindestrich-Zeichen ist der Subtraktionsoperator. first-name würde als "first minus name" interpretiert werden. Das macht kebab-case für Variablennamen in JavaScript, Python, Java und den meisten anderen Sprachen unbrauchbar. HTML-Data-Attribute: Benutzerdefinierte Data-Attribute verwenden oft kebab-case: data-user-id, data-is-active. Beim Zugriff in JavaScript werden sie zu camelCase konvertiert: element.dataset.userId, element.dataset.isActive. React-Klassennamen: Bei Verwendung von CSS Modules oder ähnlichem schreiben Sie .button-primary in CSS, greifen aber als styles['button-primary'] oder styles.buttonPrimary in JavaScript darauf zu, abhängig von Ihrem Tooling.
Tool ausprobieren
Text-Konverter