echo $begrüßung;
Warum für jeden Krümel get- und set-Methoden schreiben?
Ja, das frage ich mich auch jedes Mal neu und entscheide dann, ob sich dieses Vorgehen an dieser Stelle lohnt oder auch nicht.
Meiner Meinung nach ist es nicht sinnvoll, streng nach philosophischen Gesichtspunkten zu programmieren, oder alle Muster, die man unter der einen Programmiersprache verwendet, und die dort sinnvoll sind, 1:1 auf alle anderen Programmiersprachen zu übertragen. Wenn ein einfaches Array unter PHP die Aufgabe erfüllt, schreibe ich mir keine Collection-Klasse, nur weil das unter C# so üblich ist.
In Unkenntnis des konkreten Projekts ist es aber nicht einfach, um nicht zu sagen unmöglich, die passende Strategie dafür festzulegen. Hier hilft nur Erfahrung, um einschätzen zu können, ob eine bestimmte Realisierungsart sich in der Zukunft vielleicht als ungünstig erweisen wird, und ob sich ein Mehraufwand lohnt oder nur Ausführungszeit kostet.
Was mich davon abhält, ist vor allem auch das limitierte Objektmodell bei Versionen < 5
Immerhin eignet sich ein Objekt auch unter PHP4 schon dazu, zusammengehörige Daten zusammenzuhalten. Daten sind an das Objekt gebunden und liegen nicht lose im globalen Variablenbereich rum, wo sie jeder versehentlich überschreiben kann, nur weil man bei der Benennung von Variablen nicht genügend aufgepasst hat.
Das Kapseln von Aufgaben in Funktionen ist schon mal ein guter Ansatz für aufgeräumtes Programmieren. Mitunter ist es aber nur noch umständlich alle innerhalb einer Funktion benötigten Daten als Parameter zu übergeben und global $var; scheidet aus nicht nur philosophischen Gründen aus. Dann hilft vielleicht eine Klasse, die Übersichtlichkeit wiederherzustellen. Dies ist aber eine Entscheidung, die du als Programmierer selbst treffen musst. Und manchmal wirst du auch eine falsche treffen, doch auch solche Fehlentscheidungen helfen beim Sammeln von Erfahrung.
Auch die Sichtbarkeitsbereich von Objekten, die ja wohl nur die Ausführung des Skripts andauert, verursacht in meinen Augen viel Mehrarbeit (Objekte zwischenspeichern um wieder auf sie zugreifen zu können).
Das ist kein Problem objektorientierter PHP-Programmierung. Wenn du Daten über mehrere Seitenaufrufe zwischenzuspeichern hast, ist es egal, ob sie in Form eines serialisierten Objekts oder anderweitig (in der Session) abgelegt werden.
Was sind eure pro- und contra-Argumente für/gegen Objektorientierung mit PHP?
Diese Frage würde ich anders stellen. Zunächst einmal solltest du dich, bzw. sollten sich alle am Projekt beteiligten, generell über die Leistungsmerkmale bestimmter Techniken informieren, und diese aus möglichst objektiver Sicht kennenlernen. Ich schreibe absichtlich nicht "beurteilen". "Urteil" ist ein recht hartes Wort, und man könnte geneigt sein, dieses als unumstößlich anzusehen. Für ein Projekt ist es notwendig, nach Schema X zu programmieren, für ein anderes ist das nur Overkill. Wenn es an die Planung eines konkreten Projekts geht, ist daher immer wieder von neuem abzuschätzen, welche Techniken das beste Aufwand-Nutzen-Verhältnis bieten. Ich sehe es auch als sinnvoll an, selbst innerhalb eines Projektes diese Abschätzung für die einzelnen Teile vorzunehmen.
echo "$verabschiedung $name";