OOP und PHP

Parantatatam

mag Cookies & Kekse
Hi,

ich habe mal eine Verständnisfrage.
Und zwar habe ich jetzt mit OOP angefangen und weiß auch wie man Objekte, Klassen etc. erstellt und ausgibt etc.

Meine Frage ist bloß: Wofür kann ich das sinnvoll auf einer Website einsetzen? Also was soll ich z.B. als Objekt ansehen und was nicht? Ich habe da grade meine Verstädnisprobleme.

Wäre toll, wenn mir jemand Licht ins Dunkeln bringen könnte!

Danke
 
Zuletzt bearbeitet:
Wenn du Objekt Orientiert Arbeitest, dann sieht alles viel sauberer aus und du kannst sinnvoller klassen erstellen die für ein bestimmten bereich da sind. Nehmen wir mal an es gibt eine Klasse die heißt "Escape" und in der klasse gibt es funktionen die verschiedene methoden vorweisen und das sind eigentlich nur vorteile an OOP, es gibt sicher mehr vorteile aber das sind die "Knackpunkte" sozusagen :)
 
Ja, das habe ich auch schon verstanden, aber ich wollte mal ein Beispiel (vielleicht PHP-Code) haben, an dem ich es mal sehen kann, wofür ich es gebrauchen könnte. Also jetzt nicht so ein Beispiel wie "Erstelle Auto mit den Eigenschaften Farbe, Größe, PS", sondern ein etwas Komplexeres.
 
Zum Beispiel ein Templatesystem das über ein Interface mit einer Cache Klasse kommuniziert.

Sagen wir z. B. eine Dorfsimulation:
Du hast die Klasse Dorf.
Darin gibt es verschiedene weitere Klassen wie Häuser, Personen, Autos, Tiere, Bäume, usw.
Jede Klasse hat dabei diverse Methoden.

Soetwas prozedural umzusetzen ist m. M. n. schwieriger als mit gut modellierten Klassen.
 
Sinnvolle Klassen sind oft Dinge wie Datenbankverbindungen oder "User" wenn es ein login gibt.

Der Vorteil von OOP ist auf jeden Fall die wiederverwendbarkeit und Aktualisierbarkeit von Quellcode. Eine Einmal geschriebene Datenbankklasse oder eine Loginklasse, eine Diagramm Klasse.. usw. Kann einfach von Website von Website portiert werden kann. Und genau so wenn du eine Sicherheitslücke findest, fixt man diese und läd die neue Klassendatei auf 20 Webserver hoch. Und alle sind gefixxt.
 
Einfachste sinnvolle Codebeispiele sind:

Zend Framework
CodegIgniter
CakePHP

Schau dir die an, arbeite am besten mit ihnen und du wirst die Vorteile verstehen und genießen.

Sind alles MVC-Frameworks. MVC wäre nämlich auch ein beispiel für gutes OOP.
 
Ich denke das beste Anwendungsbeispiel für ne Klasse in PHP is das SQL-Handling...Das komplette herstellen der Verbindung zur Datenbank, kontrollieren und absetzen des Query, ausgeben der Tabellen inhalte und letztliches wieder beenden der Verbindung zur DB...

Alternative Anwendungsbereiche, denke ich mir zumindest, is ne Klasse als "Tool-Box", also eine Sammlung der wichtigsten Funktionen...

Man kann in der Klasse mit Daten arbeiten, wovon letztlich aber nur entscheidende Teile zurück geschickt werden...
Du kannst damit theoretisch ganze Datenverarbeitungssysteme schreiben...
 
Hm, weil ein Freund von mir seine ganzen Inhalte objektorientiert gemacht hat. Heißt er hat Textstellen etc. als Objekte.

Also mein Hauptproblem war, dass ich nicht verstanden hatte, warum es nicht reicht, einfach nur Funktionen zu verwenden (mach ich zur Zeit noch). Bin aber in den letzten Tage immer wieder auf Probleme gestoßen, bei denen mehrere Funktionen und Variablen mit einander kollidiert sind. Das Problem würde sich ja durch die Eingrenzungen mit "public", "private" etc. lösen.

Aber danke für die Denkanstöße!
 
Hallo,
gab schön öfters dieses Thema. Habe damals mal versucht dies zu beschreiben und zu erläutern, warum OOP Sinn macht.

Einmal wird die auch schon von dir genannte Trennung beschrieben
http://www.tutorials.de/forum/php/285385-klassen-fuer-browsergames.html#post1475878
beim zweiten Posting ging es um ein Beispiel und die Wiederverwendbarkeit
http://www.tutorials.de/forum/php/2...ambam-wofuer-braucht-man-das.html#post1516065
(ja das Beispiel besteht leider aus der bekannten Autofabrik ;) )

Vielleicht hilft dir das noch ein wenig.
Persönlich schreibe ich fast nur noch in "klassen". Es ist für mich teilweise schon schwer wieder auf die alte Art Code zu schreiben. Man gewöhnt sich dran und mit etwas Zeit und ein paar tausend Zeilen Code möchte man es nicht mehr missen.

Gruss
 
Danke. Diese Version der "Autofabrik" klang doch mal nicht so öde wie die, die ich bisher gesehen habe. Endlich mal eins, wo Klassen auf andere Klassen zugreifen.
 
Zuletzt bearbeitet:
Zurück