Die Zielgruppe für dein Tutorial scheint mir sehr fragwürdig.
Du erklärst, was === ist (deine Erklärung ist aber falsch, zumindest ungenau) und lässt den Leser experimentell den Unterschied zwischen "return" und "echo" erkennen. Zudem erklärst du, was "$this" ist (aber falsch bzw. sehr ungenau). Zudem kommentierst du "require".
Diese Dinge soll der Leser in deinem Tutorial lernen.
Zum anderen setzt du voraus, dass er sich mit grundsätzlich mit PHP auskennt. Er muss fortgeschritten genug zu sein, um das Muster hinter Klassen und Methoden deinem Quelltext entnehmen zu müssen (class, public als Schlüsselwörter kennen). Außerdem ist es verwirrend, dass eine Methode irgendwas macht, ohne dass sie Aufgerufen wird, nur weil sie "__construct" heißt - das muss er erraten, also zumindest wissen, dass PHP "__"... Dinge für sich reserviert. Funktionen (Methoden) muss er kennen, wie oben aber gesagt, keinen Rückgabewert.
Wir haben es also mit einem Anfänger zu tun, der ein gutes Gefühl fürs Programmieren hat, mit den meisten Grundlagen der Sprache gut vertraut ist, aber elementare Konzepte wie Rückgaben ausgelassen hat. Oder so ... Fragwürdige Zielgruppe.
Jetzt die Kritik: "OOP" ist ein Konzept, das man nicht erfüllt, indem man eine Klasse anlegt ... Klassen sind eher Hilfsmittel der Sprache, um mit dem Konzept programmieren zu können. Du sagst aber zum Konzept nichts - dein Tutorial hat so nicht wirklich viel mit "OOP" zu tun.
Dann ist es lückenhaft (was ist public?) und so minimal, dass ich für einen potentiellen Leser keinen Lerneffekt nachvollziehen kann.
Offensichtlich bist du selber nicht sehr erfahren: Neben deinen falschen (bzw. sehr ungenauen) Erklärungen trifft man in deinem Beispiel keine Konventionen an (Klassennamen in CamelCase, Attribute in camelCase, Dateiname wie Klassennamen für autoload, nutzt jemand ernsthaft "#" zum kommentieren?!).
Verbesserungsvorschläge für deine Erlärungen:
Quote:
/*
Wir müssen die Klasse
erstellen. Der Operator
lautet new
*/
|
Du erstellst ein Objekt, nicht die Klasse.
Quote:
|
if($seite==="1") # "===" Ist schneller als "==" Bedeutet "ist exakt so"
|
"===" und "==" unterscheiden sich dadurch, dass "===" zusätzlich auf gleichen Typen überprüft, während "==" bei ungleichem Typ durch impliziertes Casten die Typen gleich macht.
Quote:
Zu $this:
Sprich... Auf die
Variable names $var
Würde ich gerne
zugreifen! Und einen
Wert zuweißen bzw
einen Wert zurückge-
ben
|
$this ist das eigene Objekt und über $object->variable greift man auf ein Attribut eines Objektes zu. Deine "Erklärung" ist total schwammig und erklärt eigentlich auch wieder gar nichts. Dass man wohl irgendwas mit "Var" macht ist auch ohne Erklärung ersichtlich.
Komisch ist auch, dass du im nächsten Quelltext sogar voraussetzt, dass man das wissen muss, denn dort machst du kommentarlos ein: <? echo $cl->herMitDemTitel("1");?>