OOP => PHP5 [Der Meilenstein]

04/23/2012 16:51 .Marcel'#1
Hallo liebe Coder,

da ich mich seit einiger Zeit mit der Programmiersprache PHP beschäftige, aber langsam die Prozedurale Schreibweise mir abgewöhnen möchte, will ich nun mit der ObjektOrientiertenProgrammierung fortfahren.

Das problem ist folgendes, ich habe mir zwar ein paar Grundlagen angeschaut zur OOP in PHP, aber verstehen tue ich immer nur die hälfte.
Ich suche jemanden der mir evtl. ein paar Tips und Tricks zur OOP geben könnte.
04/23/2012 17:23 マルコ#2
Dazu wäre es sinnvoll, wenn du sagst, wo du steckst ;)
Wenn du willst, kannst du mich gern jederzeit via Skype kontaktieren, dann können wir auch miteinander sprechen (was einfacher ist als schreiben ;P ) und via TV z.B. Sachen anschaun^^
04/23/2012 18:46 NotEnoughForYou#3
hast mich ja in skype
04/23/2012 21:44 Project Rivalry#4
die seite hat mir sehr geholfen er erklärt das in einer etwas umgänglichen sprache.
[Only registered and activated users can see links. Click Here To Register...]
04/23/2012 22:06 Heberg#5
Meiner Meinung nach ist es schlecht die Prozeduales prgrammieren abzugewöhnen! Es ist oft in kleineren Projekten einfacher und schneller umzusetzen.

OOP ist meist nur großen Projekten (BsP: Browsergame) sinnvoll.
04/23/2012 22:20 マルコ#6
Sowas wie "abgewöhnen" ist eigentlich nicht möglich...^^
Entweder, man nutzt prozedural, OOP, oder ein Gemisch - je nachdem, was man braucht und wie groß das Projekt ist.
04/23/2012 22:24 dowhile#7
Quote:
Originally Posted by Heberg View Post
OOP ist meist nur großen Projekten (BsP: Browsergame) sinnvoll.
Das ist Quatsch. Wieso sollte man "kleinere" Projekte nicht objektorientiert umsetzen? Bei sehr kleinen Projekten würde ich sicher auf ein Framework und auf diverse Entwurfsmuster wie MVC / Schichtentrennung verzichten, aber sicher nicht auf OOP verzichten.
Vergleich mal das Resultat [Only registered and activated users can see links. Click Here To Register...] mit [Only registered and activated users can see links. Click Here To Register...] (beides Tutorials für Gästebücher; zweiteres mag ein Negativbeispiel sein, habe auf die Schnelle nicht viel anderes gefunden). Sicher, dass sich OOP nicht lohnt?
04/23/2012 23:05 マルコ#8
Ich denke, das Problem ist viel eher die Definition von "klein". Ich versteh unter klein z.B. ein Script, dass auf einfache Requests (z.B. Login) antwortet. Ein Gästebuch würde ich eher in den mittleren Bereich schieben. Wobei es da auch abhängt, wie viel man rein steckt, und was es alles kann...
04/24/2012 13:24 NotEnoughForYou#9
Quote:
Originally Posted by dowhile View Post
Das ist Quatsch. Wieso sollte man "kleinere" Projekte nicht objektorientiert umsetzen? Bei sehr kleinen Projekten würde ich sicher auf ein Framework und auf diverse Entwurfsmuster wie MVC / Schichtentrennung verzichten, aber sicher nicht auf OOP verzichten.
Vergleich mal das Resultat [Only registered and activated users can see links. Click Here To Register...] mit [Only registered and activated users can see links. Click Here To Register...] (beides Tutorials für Gästebücher; zweiteres mag ein Negativbeispiel sein, habe auf die Schnelle nicht viel anderes gefunden). Sicher, dass sich OOP nicht lohnt?
sofern man fuer kleinere projekte vorhandene klassen (zb. mysqli) nutzt stimmt das, wenn man allerdings alle klassen neuschreibt lohnt es sich nicht wirklich
04/24/2012 23:23 Ennea#10
Quote:
Originally Posted by Heberg View Post
Meiner Meinung nach ist es schlecht die Prozeduales prgrammieren abzugewöhnen! Es ist oft in kleineren Projekten einfacher und schneller umzusetzen.

OOP ist meist nur großen Projekten (BsP: Browsergame) sinnvoll.
Das halte ich für Unfug. Objektorientiertes Programmieren geht ganz weit unten los, das ist auch das Problem bei PHP. Die Grundlagen sind nicht objektorientiert, daher ist das Ganze eher ein Murks aus beidem, wenn überhaupt. Und objektorientiert ist einfach beinahe immer besser/schöner/bequemer. Ich ärgere mich bei PHP ständig über diverse String-Funktionen, welche eben nicht als Funktionen auf String-Objekte implementiert sind, sondern als Argument den zu verarbeitenden String entgegennehmen. Das ist aber ziemlich "unbequem".
04/25/2012 06:31 Heberg#11
Wenn man eine kleine Webseite hat, dort ein paar funktion z.B. mit PHP machen möchte, wäre es unfug, gleich 50 Zeilen OOP zu schreiben statt 20 von prozedualer. Jeder seine Sache.
04/25/2012 07:59 Ennea#12
Quote:
Originally Posted by Heberg View Post
Wenn man eine kleine Webseite hat, dort ein paar funktion z.B. mit PHP machen möchte, wäre es unfug, gleich 50 Zeilen OOP zu schreiben statt 20 von prozedualer. Jeder seine Sache.
Ich weiß grad nicht wie du plötzlich darauf kommst, es sei irgendwie negativ, dass der Code dadurch gleich sehr viel länger wird. Objektorientiertes Programmieren erlaubt wenigstens eventuelle spätere Wiederverwendung des Codes ohne großartige Änderungen.
04/25/2012 14:17 Heberg#13
Stimmt. Ich meine nur, und das ist, das was ich die ganze Zeit versuche zu sagen, das es auf das Projekt ankommt, ob man OOP oder Prozedual coded. Fakt ist, man sollte nicht komplett aufhören prozedual zu coden.
04/25/2012 16:55 マルコ#14
Quote:
Originally Posted by Ennea View Post
Ich weiß grad nicht wie du plötzlich darauf kommst, es sei irgendwie negativ, dass der Code dadurch gleich sehr viel länger wird. Objektorientiertes Programmieren erlaubt wenigstens eventuelle spätere Wiederverwendung des Codes ohne großartige Änderungen.
Also wer bei 20 Zeilen an ein Wiederverwenden denkst, der denkt irgendwie falsch. 20 Zeilen sind schneller neu getippt als irgendwie zurechtgebogen und eingebaut.

PRO PROZEDURAL!
04/26/2012 20:47 werdernator#15
du musst nicht oop kennen, du musst oop denken.

wenn du ein script schreiben willst, denke vorher nach, welche einzelschritte du brauchst.
dann kannst du einfach alles im script bequem aus der klasse aufrufen.

bsp: klasse für ein newssystem:

Was muss es alles können:

-news anzeigen
-adminkram
--login/logout
---loginCheck
---loginDaten abrufen
---logout
--editieren
--löschen
--sperren
--erstellen
-evtl. newsspot