Heim > Web-Frontend > js-Tutorial > Hauptteil

Clean Code verstehen: Entstehung ⚡️

Patricia Arquette
Freigeben: 2024-10-07 14:21:30
Original
838 Leute haben es durchsucht

Understanding Clean Code: Emergence ⚡️

In Kapitel 12 von Clean Code mit dem Titel „Emergence“ wird untersucht, wie durch die Einhaltung grundlegender Designprinzipien saubere, gut strukturierte Software entsteht.

Emergenz im Softwaredesign bezieht sich auf den Prozess, durch den komplexes Verhalten oder Funktionalität aus einfachen, gut verstandenen Regeln entsteht.

Das Befolgen dieser Regeln kann Entwicklern dabei helfen, Software zu erstellen, die einfach zu warten, zu erweitern und zu verstehen ist.


Dieses Kapitel konzentriert sich auf die vier Regeln des einfachen Designs und legt Wert auf Einfachheit und Testbarkeit für sauberen und effizienten Code.


? Die vier Regeln des einfachen Designs

  • Besteht alle Tests
  • Zeigt Absicht
  • Keine Duplizierung
  • Minimiert die Anzahl der Klassen und Methoden

Lassen Sie uns jede dieser Regeln aufschlüsseln und sehen, wie sie mit JavaScript angewendet werden.


1. Besteht alle Tests

Die Grundlage sauberer, entstehender Software ist, dass sie funktionsfähig sein muss.

Der gesamte Code sollte seine Tests bestehen, um sicherzustellen, dass das erwartete Verhalten erhalten bleibt und neue Funktionen keine Fehler verursachen.

In JavaScript wird dies häufig durch das Schreiben von Komponententests mit Bibliotheken wie Jest oder Mocha erreicht.


function add(a, b) {
  return a + b;
}

// Test (using Jest)
test('adds 1 + 2 to equal 3', () => {
  expect(add(1, 2)).toBe(3);
});


Nach dem Login kopieren

Indem Sie sicherstellen, dass die Software alle Tests besteht, stellen Sie sicher, dass das System wie vorgesehen funktioniert.

Sauberer Code beginnt mit zuverlässigen Tests. Ohne dies sind die anderen Regeln nicht von Bedeutung.


2. Offenbart die Absicht

Der Code sollte kommunizieren, was er tut. Gut benannte Funktionen, Variablen und Klassen können Ihren Code ohne Kommentare einfacher lesbar und verständlich machen.

Code, der seine Absicht offenbart, ist selbsterklärend.

Schlechte Namensgebung:


function d(x) {
  return x * 2;
}


Nach dem Login kopieren

Gute Namensgebung:


function doubleNumber(number) {
  return number * 2;
}


Nach dem Login kopieren

In diesem Fall zeigt doubleNumber() deutlich die Absicht der Funktion.

Jeder, der diesen Code liest, kann seinen Zweck ohne zusätzliche Erklärungen sofort verstehen.

Diese Vorgehensweise reduziert nicht nur Verwirrung, sondern verbessert auch die Wartbarkeit.


3. Keine Vervielfältigung

Duplizierung im Code ist einer der größten Feinde sauberer Software. Wiederholte Logik kann zu Fehlern und erhöhtem Wartungsaufwand führen.

Ziel ist es, Redundanz zu reduzieren, indem allgemeine Verhaltensweisen in wiederverwendbare Funktionen oder Module abstrahiert werden.

Codeduplizierung:


function calculateAreaOfSquare(side) {
  return side * side;
}

function calculateAreaOfRectangle(length, width) {
  return length * width;
}


Nach dem Login kopieren

Beide Funktionen führen ähnliche Berechnungen durch. Durch Refactoring können wir Duplikate vermeiden.

Keine Vervielfältigung:


function calculateArea(shape) {
  if (shape.type === 'square') {
    return shape.side * shape.side;
  } else if (shape.type === 'rectangle') {
    return shape.length * shape.width;
  }
}


Nach dem Login kopieren

Durch die Verallgemeinerung der Funktion eliminieren wir die wiederholte Logik und machen den Code wartbarer.


4. Minimiert die Anzahl der Klassen und Methoden

Die letzte Regel des einfachen Designs fördert die Minimierung der Anzahl von Klassen und Methoden, ohne die Klarheit zu beeinträchtigen.

Das bedeutet, unnötige Komplexität zu vermeiden.

Jede Klasse oder Funktion sollte eine klare und fokussierte Verantwortung haben und sich an das Single Responsibility Principle (SRP) halten.

Zu viele Methoden:


class User {
  constructor(name) {
    this.name = name;
  }

  getName() {
    return this.name;
  }

  setName(name) {
    this.name = name;
  }

  printWelcomeMessage() {
    console.log(`Welcome, ${this.name}!`);
  }

  // Additional unrelated methods
  getUserProfile() {
    // ... some logic
  }

  logActivity() {
    // ... some logic
  }
}


Nach dem Login kopieren

Diese Klasse hat zu viele Verantwortlichkeiten. Es sollte sich nur auf die Verwaltung des Benutzernamens konzentrieren.

Überarbeitet:


class User {
  constructor(name) {
    this.name = name;
  }

  getName() {
    return this.name;
  }

  setName(name) {
    this.name = name;
  }
}

class Logger {
  static logActivity(user) {
    // ... some logic
    console.log(`${user.getName()} performed an activity.`);
  }
}


Nach dem Login kopieren

Durch die Trennung von Belangen wird der Code einfacher und leichter zu warten.

Jetzt hat jede Klasse eine einzige Verantwortung und hält sich an die Prinzipien des Minimalismus und der Einfachheit.


Abschluss

Die vier Regeln des einfachen Designs – Bestehen aller Tests, Offenlegung der Absicht, Eliminierung von Duplikaten und Minimierung der Anzahl von Klassen und Methoden – leiten die Erstellung von sauberem, wartbarem und entstehendem Code.

Durch die Befolgung dieser Prinzipien wird die Komplexität unter Kontrolle gehalten und Ihr Code wird anpassungsfähiger an Änderungen.

Viel Spaß beim Programmieren!

Das obige ist der detaillierte Inhalt vonClean Code verstehen: Entstehung ⚡️. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!