Hallo Community.
Wie Andere auch schon angemahnt haben (z.B.
modulfux) finde ich, daß es dringend Vorgaben für Coding-Standards bedarf was Erweiterungen und überhaupt Code für
modified eCommerce betrifft.
Können wir das nicht mal umsetzen ?
Ich sehe so viel, sorry für die deutlichen Worte, so viel Schrott, daß es weh tut.
Es scheint vor allem auch die Faulheit Code lesbar zu formatieren um sich zu greifen.
Aktuell, allerdings, fiel mir wieder einmal auf, daß in DB-Queries ständig Single Quotes benutzt werden wo mit einem INT-Feld in der DB verglichen wird (siehe dazu auch dieses
Ticket #1417).
Das ist nicht nur eine Unart sondern kann auch zu Fehlern (siehe zitiertes Ticket), evtl. zu Sicherheitslücken und zukünftig sogar zu Funktionseinbußen kommen.
Simples Beispiel:
VerkehrtSELECT *
FROM customers_status
WHERE customers_status_id = '';
RichtigSELECT *
FROM customers_status
WHERE customers_status_id IS NULL;
bzw. in Code mit PHP-Variablen immer gecastetxtc_db_query("SELECT *
FROM customers_status
WHERE customers_status_id = ".(int)$id);
und eben nicht so (ob gecastet oder nicht)xtc_db_query("SELECT *
FROM customers_status
WHERE customers_status_id = '".$id."'");
Wer die erstgenannte Query ausführt wird (wenn unwissend evtl. erstaunt) feststellen, daß es ein Ergebnis gibt, nämlich das wo
customers_status_id == 0 ist, obwohl wir doch nach
WHERE customers_status_id = '' gefragt haben.
Man muß immer die Types der Felder kennen und wissen ob das Feld NULL sein kann wenn man Queries baut.
D.h. auch, daß, ändert man die Eigenschaften eines DB-Feldes, Queries auf das Feld im Code überprüft werden müssen.
Bitte, bitte, hört auf damit die Parameter in WHERE-Clauses zu quoten wenn es sich um INT-Felder in der DB handelt.
(Ich habe das bestimmt auch schon gemacht
)
Ein weiterer, eher kosmetischer Grund, der zur Lesbarkeit und Verständlichkeit beiträgt, wäre das Einschieben von Zeilen.
Früher hat man eigtl. immer einen Tab weit eingerückt und ein Tab sollte im Editor der Wahl so eingestellt sein, daß er 4 Leerzeichen setzt.
Viele, und vor allem auch in
modified oft so zu sehen, setzen einen Tab jedoch auf 2 Leerzeichen.
Es wäre schön wenn wir da mal einen Standard für hätten.
Ich wäre sogar dafür, daß hier eingestellte Erweiterungen und Module ein Rating bekommen sollten.
Wenn
modified-Team-Mitglieder oder Experten eine Erweiterung bewertet haben bekommt sie Sternchen.
So. Nachdem meine Wenigkeit in dieser Community nicht wenig beiträgt, vor allem auch mit Code, Erweiterungen und Modulen, ich jedoch wenn ich mal etwas benötige regelmäßig Schrott vorfinde
- nicht immer natürlich, da gibt es schon die Guten
-
geht mir das langsam auf den Zeiger.
Deshalb nochmals:
Lasst uns eine FAQ mit Coding-Standards machen, bitte.
Gruß,
noRiddle
Linkback: https://www.modified-shop.org/forum/index.php?topic=40017.0