Ich habe gerade erst angefangen, OOP zu lernen. Ich habe vor ungefähr einem Jahr angefangen und wahrscheinlich 15.000 Zeilen davon geschrieben. Aber ich habe alles mit kaum Erfahrung geschrieben, als ich mir die OOP anderer Leute angesehen habe.
Die meisten meiner Klassenfunktionen geben einen Wert zurück oder nehmen Änderungen an den Klasseneigenschaften vor und geben true / false zurück. Einige von denen, die einen Wert zurückgeben, speichern diesen Wert auch in einer Klasseneigenschaft (nachdem zuerst überprüft wurde, ob die Klasseneigenschaft bereits festgelegt ist, wodurch ein Datenbankaufruf vermieden werden kann).
Jetzt grabe ich viel in Magento / Zend und stelle fest, dass viele ihrer Klassenmethoden "$ this" zurückgeben. Soweit ich weiß, handeln Klassenmethoden, die $ this als Referenz und nicht als Wert zurückgeben, anders als bei regulären Funktionen, sodass Sie das gleiche Objekt zurückerhalten, mit dem Sie begonnen haben, und nicht eine Kopie.
Gibt $this
ich etwas zurück, von dem ich viel mehr tun sollte? Erleichtert dies die Wartung und Verwendung des Codes? Ist eine Rückgabe $this
erforderlich, um Klassenmethoden zu verketten?
no();
Sind sie manchmal sehr bequem? yes().yes().yes().yes().yes();
: D
$this
. en.wikipedia.org/wiki/Fluent_interface