Your SlideShare is downloading. ×
0
TYPO3 coding guidelines
TYPO3 coding guidelines
TYPO3 coding guidelines
TYPO3 coding guidelines
TYPO3 coding guidelines
TYPO3 coding guidelines
TYPO3 coding guidelines
TYPO3 coding guidelines
TYPO3 coding guidelines
TYPO3 coding guidelines
TYPO3 coding guidelines
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

TYPO3 coding guidelines

1,839

Published on

TYPO3 coding guidelines - Was ist beim Programmieren zu beachten und warum?

TYPO3 coding guidelines - Was ist beim Programmieren zu beachten und warum?

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,839
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
14
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. TYPO3 & in2code CodingGuidelines(PHP)
  • 2. Introduction
  • 3. Was sind CodingGuidelines
    Die CG definieren, wie TYPO3 Code, Dateien und Verzeichnisse strukturiert und formatiert sein sollten. CG liefern keine technischen Informationen und hilft nicht beim Programmieren.
  • 4. Warum braucht man CodingGuidelines
    • Sicherheit
    • 5. Lesbarkeit
    Die CG helfen, sich in unbekanntem Code (und das kann durchaus der eigene Code nach einem längeren Zeitraum sein) schnell und sicher zurechtzufinden.
    Das Einhalten der CG sichert eine skalierbare und sichere Erweiterung gerade bei der Arbeit im Team.
  • 6. PHP Showcase
  • 7. Finde den (die) Fehler
    functionxy () {
    $a = "<div style=color:blue;>Das ist ein Text</div>";
    if ($b)
    $a = "<a href="index.php?id=$_POST["var"]">$a</a>";
    $anzahl = $row['x'].'Keine Produkte gewählt';  
    mysql_connect($dbort,$dbuser,$dbpw); mysql_select_db($dbdb);
    $z=mysql_query("SELECT * FROM table"); while($datenvondatenbank=mysql_fetch_array($z))
    {
    echo "Daten: $datenvondatenbank[links]";
    }
    }
    Warnung: Zu intensive Betrachtung
    kann zu epileptischen Anfällen führen!
  • 8. Auflösung I
    functionxy() {
    • Sinnvolle Namen für Methoden und Klassen vergeben
    • 9. Sichtbarkeit der Methoden und Attribute vergeben (PHP5)
    $a = "<div style=color:blue;>Das ist ein Text</div>";
    • Sinnvolle Variablennamen (Nur temporäre Variablen mit kurzer Schreibweise)
    • 10. HTML Code stets in Templates auslagern
    • 11. Stringwerte in Hochkommas können schneller geparst werden als in Anführungszeichen
    $anzahl = $row['x'].'Keine Produkte gewählt';
    • Sämtliche Bezeichnungen und Hinweistext international verständlich (Englisch)
    • 12. Texte in Sprachdateien auslagern (locallang)
    • 13. Vor und nach jedem . ein Leerzeichen einfügen
    if ($b)
    $a = "<a href="index.php?id=$_POST["var"]">$a</a>";
    • IF Anweisungen immer mit Klammern
    • 14. Sinnvolle Variablennamen (Nur temporäre Variablen mit kurzer Schreibweise)
    • 15. HTML Code stets in Templates auslagern
    • 16. GET/POST Parameter nicht ungefiltert ausgeben
  • Auflösung II
    mysql_connect($dbort,$dbuser,$dbpw); mysql_select_db($dbdb);
    • TYPO3 API Funktionen vorziehen
    • 17. Jede Anweisung in eine neue Zeile
    $z=mysql_query("SELECT * FROM table");
    • TYPO3 API Funktionen vorziehen
    • 18. Stringwerte in Hochkommas können schneller geparst werden als in Anführungszeichen
    while($datenvondatenbank=mysql_fetch_array($z))
    {
    • Beginnende Klammern in der gleichen Zeile
    echo "Daten: $datenvondatenbank[links]";
    }
    • Ausgabe erfolgt in TYPO3 in der Regel nicht über echo sondern als Rückgabewert
    • 19. Stringwerte in Hochkommas können schneller geparst werden als in Anführungszeichen
    • 20. Zeilen sollten der Übersicht wegen mit Tabstopps (nicht Leerzeichen) eingerückt werden
  • Auf einen Blick I
    • Leerzeichen
    • 21. nach Operatoren (>, =, <, ==, *, +, …)
    Ausnahme $i++
    • nach Funktions-Argumenten getTitleByUid($param1, $param2)
    • 22. Kommentare innerhalb des Codes
    • 23. In einer eigenen Zeile davor bündig mit dem entsprechenden Code
    • 24. Kommentare sind immer wichtig (vor allem wenn die Funktion nicht ersichtlich ist)
    • 25. Debugausgaben
    • 26. Diese müssen gut beschrieben sein (An- und Ausschalten)
    • 27. IF/ELSE/ELSEIF
    • 28. Leerzeichen vor und nach den runden Klammern
    • 29. Nur zusammen mit geschweiften Klammern
    • 30. Zeilenende
    • 31. Unix
    • 32. Keine Leerzeilen vor oder nach php tags (<?php … ?>)
    • 33. Keine Leerzeichen am Ende einer Zeile
    • 34. Zeilen sollen kürzer als 80 Zeichen sein
    • 35. PHP Tags
    • 36. Immer <?php (nie <?)
    • 37. Immer mit Abschluss ?>
  • Auf einen Blick II
    • Schleifen
    • 38. foreach statt while(list())
    • 39. foreach vs. reset()
    • 40. Dateinamen
    • 41. So lang wie gewollt
    • 42. Kleinschreibung
    • 43. Klassen, Funktionen und Variablen
    • 44. Klassenfunktion immer dokumentieren
    • 45. Nur eine Klasse pro Datei
    • 46. camelCase in der Schreibweise (kein Unterstrich)
    • 47. Erstes Zeichen ist kleingeschrieben
    • 48. Variablenname nicht im Parameterkommentar der Methoden aufführen
    • 49. String Variablen
    • 50. Hochkomma anstatt Anführungszeichen
    • 51. Array
    • 52. Array zuvor definieren bevor dieses an eine Funktion übergeben wird
  • Vielen Dank
    www.in2code.de
    Stefan Busemann
    Tina Gasteiger
    Alex Kellner
    In2code.

×