April 4, 2023

PHP, guter Code schlechter Code

Programmieren ist eine Kunst, die viele Facetten hat, aber eine der wichtigsten Fähigkeiten, die ein guter Programmierer besitzen sollte, ist die Fähigkeit, sauberen und effizienten Code zu schreiben. Sauberer Code bedeutet, dass der Code leicht zu lesen und zu verstehen ist, während effizienter Code bedeutet, dass er schnell und ressourceneffizient ausgeführt werden kann.

Es gibt viele Techniken und Prinzipien, die einem helfen können, sauberen und effizienten Code zu schreiben. Hier sind einige davon:

  1. Verwenden Sie aussagekräftige Variablen- und Funktionsnamen: Eine der wichtigsten Techniken, um sauberen Code zu schreiben, ist die Verwendung von aussagekräftigen Variablen- und Funktionsnamen. Vermeiden Sie Abkürzungen und verwenden Sie Namen, die den Zweck der Variablen oder Funktionen klar beschreiben.
  2. Schreiben Sie kurze und prägnante Funktionen: Funktionen sollten nicht zu lang sein und nur eine Aufgabe erfüllen. Wenn eine Funktion zu viele Aufgaben hat, wird es schwieriger, sie zu verstehen und zu warten.
  3. Vermeiden Sie Redundanz: Redundanz kann zu schwer verständlichem Code führen und die Wartbarkeit beeinträchtigen. Vermeiden Sie daher die Wiederholung von Code und versuchen Sie, ihn in Funktionen oder Klassen zu abstrahieren.
  4. Verwenden Sie Kommentare sparsam: Kommentare sollten nur verwendet werden, um den Code zu erklären, wenn es notwendig ist. Wenn der Code selbst erklärend ist, sind Kommentare nicht erforderlich.
  5. Verwenden Sie die richtigen Datenstrukturen: Die Verwendung der richtigen Datenstrukturen kann dazu beitragen, den Code effizienter zu gestalten und den Speicherbedarf zu reduzieren.
  6. Vermeiden Sie Schleifen und Verschachtelungen: Schleifen und Verschachtelungen können den Code verlangsamen und die Lesbarkeit beeinträchtigen. Verwenden Sie stattdessen Funktionen wie map, filter und reduce, um das Problem zu lösen.
  7. Testen Sie Ihren Code: Tests helfen Ihnen, Fehler frühzeitig zu erkennen und zu beheben. Schreiben Sie daher Tests für Ihre Funktionen und überprüfen Sie sie regelmäßig.
  8. Beachten Sie Design Patterns: Design Patterns sind bewährte Lösungen für häufig auftretende Probleme im Programmieren. Wenn Sie diese Muster verwenden, wird es einfacher, sauberen und effizienten Code zu schreiben.

Insgesamt kann die Fähigkeit, sauberen und effizienten Code zu schreiben, dazu beitragen, dass der Code leichter zu warten, zu verstehen und zu erweitern ist. Durch die Anwendung dieser Techniken und Prinzipien können Sie sicherstellen, dass Ihr Code sowohl effektiv als auch effizient ist.

PHP ist nicht gleich PHP. Viele Programmierer beherrschen zwar PHP in dem Maße, dass bestimmte Dinge so funktionieren, wie sie funktionieren sollen. Jedoch gibt es auch gute Programmierer, die von Anfang an an die Effektiviät und vor allem die Sicherheit der Anwendung denken. Hier ein kleines Beispiel, wie man schlechten Code verbessern kann.

<?php

// Schlechte Code-Qualität: unstrukturiert und inkonsistent
function formatName($first, $last) {
$result = "";
$result = ucwords(strtolower($first)) . " " . ucwords(strtolower($last));
return $result;
}

// Schlechte Code-Qualität: unsicher und anfällig für SQL-Injektion
function getUser($username) {
$query = "SELECT * FROM users WHERE username = '" . $username . "'";
$result = mysql_query($query);
return mysql_fetch_array($result);
}

?>

Das selbe Ergebnis erreichen wir mit einem wesentlich besseren und vor allem sicheren Code.

<?php

// Besser strukturierter Code: sprechende Funktionsnamen und konsistente Formatierung
function format_name($first_name, $last_name) {
    return ucwords(strtolower($first_name)) . " " . ucwords(strtolower($last_name));
}

// Sicherheitsverbesserung: sichere Verwendung von PDO Prepared Statements zur Verhinderung von SQL-Injektionen
function get_user_by_username($username) {
    $pdo = new PDO('mysql:host=localhost;dbname=mydatabase', 'myusername', 'mypassword');
    $statement = $pdo->prepare('SELECT * FROM users WHERE username = :username');
    $statement->bindParam(':username', $username);
    $statement->execute();
    return $statement->fetch(PDO::FETCH_ASSOC);
}

?>

Das verbesserte Beispiel hat folgende Vorteile:

  • Bessere Strukturierung: Die Funktionsnamen sind aussagekräftiger und konsistenter formatiert.
  • Verbesserte Sicherheit: Die Verwendung von PDO Prepared Statements verhindert SQL-Injektionen.
  • Bessere Lesbarkeit: Die verbesserte Formatierung erleichtert das Lesen des Codes.
  • Bessere Wartbarkeit: Der verbesserte Code ist einfacher zu warten und zu erweitern.

Es ist wichtig zu betonen, dass Code-Qualität sehr subjektiv sein kann und es oft verschiedene Wege gibt, den gleichen Code zu schreiben. Die Verbesserungsvorschläge sind lediglich als Beispiel dafür gedacht, wie man schlechten Code verbessern kann. In der Praxis hängt die Wahl der optimalen Code-Struktur und -Formatierung von vielen Faktoren ab, wie zum Beispiel der Art des Projekts, der Anforderungen und dem Team, das an dem Projekt arbeitet.

Published On: April 4th, 2023Categories: PHP, Webmaster, Wolfram Consult BlogTags: Views: 97