Clean Code in JavaScript: Prinzipien und Praxisbeispiele

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Clean Code in JavaScript: Prinzipien und Praxisbeispiele



Sauberer Code ist nicht nur ein modischer Begriff, sondern eine professionelle Notwendigkeit. In der Welt von JavaScript und Node.js, wo Projekte schnell wachsen und sich verändern, unterscheidet die Fähigkeit, verständlichen und wartbaren Code zu schreiben, den erfahrenen Entwickler vom Anfänger. In diesem Artikel analysieren wir die wichtigsten Clean-Code-Prinzipien anhand konkreter Beispiele aus der Praxis.



Warum ist sauberer Code für JavaScript-Entwickler wichtig?



JavaScript ist eine Sprache mit dynamischer Typisierung, was sie flexibel, aber auch anfälliger für Fehler macht. Schlecht geschriebener Code in Node.js kann die Wartung eines Projekts zum Albtraum machen. Clean Code hilft dabei:

  • Die Zeit für Debugging und Refactoring zu verkürzen
  • Die Einarbeitung neuer Entwickler in das Projekt zu vereinfachen
  • Die Anzahl der Bugs in der Produktion zu reduzieren
  • Die Produktivität des Teams zu steigern


Kommen wir nun zu den konkreten Prinzipien und Beispielen.



Prinzip 1: Aussagekräftige Namen für Variablen und Funktionen



Die einfachste und gleichzeitig am häufigsten verletzte Regel. Der Name einer Variable sollte die Frage "Was ist das?" oder "Wozu dient das?" beantworten.



Schlechtes Beispiel:

// Schlecht: Was ist d? Was macht fn?const d = new Date();const fn = (a, b) => a + b;const arr = [1, 2, 3, 4];const x = arr.filter(i => i > 2);


Gutes Beispiel:

// Gut: Ohne Kommentare verständlichconst currentDate = new Date();const sum = (firstNumber, secondNumber) => firstNumber + secondNumber;const numbers = [1, 2, 3, 4];const filteredNumbers = numbers.filter(number => number > 2);


Regel für Node.js: Wenn Sie mit asynchronen Operationen arbeiten, fügen Sie Suffixe hinzu, die den Rückgabetyp angeben: getUserDataAsync, fetchPosts.



Prinzip 2: Funktionen sollten klein sein und eine Sache tun (KISS)



Das KISS-Prinzip (Keep It Simple, Stupid) ist in JavaScript von entscheidender Bedeutung. Eine Funktion sollte kein "Schweizer Taschenmesser" sein.



Schlechtes Beispiel – Monsterfunktion:

// Schlecht: Eine Funktion macht allesfunction processUserData(user) {    // Validierung    if (!user.email || !user.name) {        throw new Error('Invalid user data');    }        // Formatierung    const formattedName = user.name.trim().toLowerCase();    const formattedEmail = user.email.trim().toLowerCase();        // Speichern in der DB    db.save({ name: formattedName, email: formattedEmail });        // E-Mail senden    emailService.sendWelcome(formattedEmail);        // Logging    logger.info(`User ${formattedName} processed`);}


Gutes Beispiel – Aufteilung der Verantwortlichkeiten:

// Gut: Jede Funktion ist für eine Aufgabe zuständigfunction validateUserData(user) {    if (!user.email || !user.name) {        throw new Error('Invalid user data');    }}

function formatUserData(user) { return { name: user.name.trim().toLowerCase(), email: user.email.trim().toLowerCase() };}

async function processUserRegistration(userData) { validateUserData(userData); const formattedUser = formatUserData(userData); await db.save(formattedUser); await emailService.sendWelcome(formattedUser.email); logger.info(`User ${formattedUser.name} processed`); return formattedUser;}


Solcher Code ist einfacher zu testen, zu debuggen und zu erweitern.



Prinzip 3: Vermeiden Sie magische Zahlen und Zeichenketten (DRY)



"Magische Zahlen" sind Literale, deren Bedeutung nicht offensichtlich ist. Lagern Sie sie in Konstanten mit verständlichen Namen aus.



Schlechtes Beispiel:

// Schlecht: Was ist 1000? Warum 60?setTimeout(() => {    if (user.age > 65)                

Blogs

Buchempfehlungen