camelCase, snake_case und kebab-case konvertieren — Programmier-Konventionen
In der Programmierung und im Web-Development gibt es je nach Sprache und Kontext unterschiedliche Namenskonventionen. Variablen, Funktionen, Klassen und CSS-Eigenschaften folgen verschiedenen Case-Stilen. Das Konvertieren zwischen diesen Stilen beim Refactoring oder beim Integrieren von Daten aus verschiedenen Quellen ist eine häufige Aufgabe — der WikiPlus Case-Converter erledigt sie in Sekunden.
Übersicht der Programmier-Case-Konventionen
Jede Programmiersprache und jedes Ökosystem hat etablierte Konventionen. camelCase: Erste Wort klein, jedes weitere beginnt mit Großbuchstaben — meinFunktionsName, maxRetryCount. Standard in JavaScript/TypeScript für Variablen, Funktionen und Objekt-Properties. Java und C# für Variablen und Methoden. PascalCase (UpperCamelCase): Alle Wörter mit Großbuchstaben — MeinKlassenName, UserRepository. Standard für Klassen in den meisten OOP-Sprachen. React-Komponenten (MyButton.jsx). TypeScript-Interfaces (IUserService) und -Typen (UserProfile). snake_case: Wörter durch Unterstrich getrennt, alles kleingeschrieben — user_name, max_retry_count. Standard in Python für Variablen und Funktionen. Ruby, PHP (Variables). SQL-Spaltennamen. UPPER_SNAKE_CASE oder SCREAMING_SNAKE_CASE: Alles groß mit Unterstrichen — MAX_RETRY_COUNT, API_BASE_URL. Standard für Konstanten in JavaScript (const), Python und Java. kebab-case: Wörter durch Bindestriche getrennt — user-name, max-retry-count. Standard für CSS-Klassen und Custom Properties (--primary-color). HTML-Attribute (data-user-id). URL-Slugs. Dateinamen (mein-skript.js). dot.case: Wörter durch Punkte getrennt — some.dot.separated.value. Seltener, aber in Config-Dateien und manchen Sprachen verwendet.
Wann welche Konvention verwenden: Leitfaden für Entwickler
Die Wahl der Konvention sollte konsistent und nach den Standards der jeweiligen Technologie sein. JavaScript/TypeScript: camelCase für Variablen/Funktionen, PascalCase für Klassen/Komponenten, UPPER_SNAKE_CASE für Konstanten, kebab-case für CSS-Klassen und Dateinamen. Python: snake_case für alles (Variablen, Funktionen, Module), PascalCase nur für Klassen, UPPER_SNAKE_CASE für Konstanten. Java/Kotlin: camelCase für Variablen/Methoden, PascalCase für Klassen/Interfaces, UPPER_SNAKE_CASE für Konstanten. CSS: kebab-case für Klassen und Properties (--font-family-base). Datenbanken (SQL): snake_case für Tabellen- und Spaltennamen — user_accounts, created_at. REST-APIs: Oft snake_case im JSON-Body (obwohl camelCase bei JavaScript-APIs auch üblich ist). Konsistenz innerhalb eines Projekts hat Vorrang — wähle eine Konvention und halte sie durch. Linter-Tools (ESLint, Stylelint) können die Einhaltung automatisch prüfen.
Daten-Konvertierung: JSON-Felder von snake_case zu camelCase
Ein häufiges Szenario in der API-Integration: Eine Backend-API (oft Python oder Ruby) liefert JSON mit snake_case-Feldern: { 'user_name': 'maxmustermann', 'created_at': '2026-05-12' }. Das Frontend (JavaScript/TypeScript) erwartet camelCase: { userName: 'maxmustermann', createdAt: '2026-05-12' }. Lösungen: manuell (Tipp-Aufwand), mit JavaScript: const camelCase = obj => { /* ... */ }, mit Libraries wie humps (npm) oder axios-interceptors die automatisch konvertieren, mit Backend-Konfiguration (Django REST Framework: RestFramework.JSON.camelizeKeys). Der WikiPlus Case-Converter hilft dabei, Feldnamen manuell zu konvertieren wenn man die korrekten camelCase- oder snake_case-Versionen schnell braucht — etwa beim Schreiben von Mapping-Code oder TypeScript-Interfaces.
Refactoring: Case-Stile im Code ändern
Wenn ein Legacy-Code-Basis oder ein importiertes Modul eine andere Case-Konvention verwendet als das eigene Projekt, ist Refactoring nötig. Strategien: IDE-Rename-Refactoring (VS Code, IntelliJ): Benennt alle Verwendungen eines Symbols automatisch um. Das sicherste Verfahren für Code. Suchen-und-Ersetzen mit Regex: Für systematische Umbenennungen in vielen Dateien. Regex kann Case-Konvertierungen erkennen (camelCase-Muster: /([a-z])([A-Z])/g). Code-Mods: Tools wie jscodeshift für JavaScript ermöglichen AST-basierte Code-Transformationen, die sicherer als einfache String-Ersetzung sind. Der WikiPlus Case-Converter ist das richtige Tool für schnelle manuelle Konvertierungen einzelner Bezeichner oder Listen von Feldnamen — etwa beim Erstellen von TypeScript-Interface-Definitionen oder bei der Dokumentation von API-Feldern.
Häufig gestellte Fragen
- Was ist der Unterschied zwischen camelCase und PascalCase?
- camelCase: Das erste Wort beginnt mit Kleinbuchstaben — meinVariablenName. PascalCase: Auch das erste Wort beginnt mit Großbuchstaben — MeinKlassenName. PascalCase wird deshalb auch UpperCamelCase genannt, camelCase manchmal lowerCamelCase.
- Warum wird snake_case in Python bevorzugt?
- Der offizielle Python Style Guide (PEP 8) definiert snake_case für Variablen, Funktionen und Module. Das ist eine Community-Konvention, keine Sprachanforderung — Python würde auch camelCase akzeptieren, aber der Code wäre nicht PEP-8-konform und würde Linter-Warnungen erzeugen.
- Wie konvertiere ich eine Liste von Datenbankspaltennamen von snake_case zu camelCase?
- Den WikiPlus Case-Converter nutzen: Alle Spaltennamen (eine pro Zeile) einfügen und den camelCase-Modus wählen. Das Tool konvertiert alle Zeilen gleichzeitig. Für größere Mengen eignen sich Scripts mit humps.js (JavaScript) oder eine Python-Funktion mit re.sub().