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: 63