phpbar.de logo

Mailinglisten-Archive

[php] PHP5 und static

[php] PHP5 und static

Sebastian Mendel lists at sebastianmendel.de
Mon Jun 13 17:06:00 CEST 2005


Andreas Heigl wrote:

>> ahja, da fast 90% aller Methoden dieser Klasse auch statisch aufgerufen
>> werden können verwende ich dann also auch alle Methoden nur noch
>> statisch dann sind wir wieder 2 Jahre zurück, wo Klassen nichts weiter
>> waren als Sammlungen von Funktionen, und die Eigenschaften werden als
>> Parameter von Methode zu Methode mitgeschleift?
>>
>> ganz abgesehen davon das ich bei jedem statischen Aufruf neu überprüfen
>> muss in welchem Format das Datum vorliegt (denn es gibt ja nicht nur
>> unixtimestamps). - Wow das gibt bestimmt ne Super Performance und der
>> Wasserkopf und der doppelte Code ...
>>
>>
>> Oder wie meinst du das?
>
> Hallo Sebastian. Ohne jetzt auf dass gemoser eingehen zu wollen,

tut mir leid wenn Mails als gemoser aufgefasst werden, setz mich auf die
ignore-liste


> stellt sich
> für mich persönlich die Frage, was du willst:
> Objektorientiert Programmieren?

ja


> Wo ist dann das Problem, eine Zeile mehr einzubauen?

eine Zeile mehr bei jeder Verwendung einer Methode.

die Übersichtlichkeit?

Ich bin der 'Anbieter' mit meiner Klasse, und der 'Kunde' nutzt diese
Klasse, und der Kunde soll diese Klasse so einfach nutzen können wie es
geht, denn der Kunde ist König - ich persönlich ziehe jede Anwendung wo
ich nur einen Schritt anstelle von zwei machen muss vor.


> Oder willst du Zeilensparend programmieren?
> Dann bist du wieder 'vor zwei Jahren' und verwendest am Besten gar keine
> Klassen sondern nur Funktionssammlungen, die du in verschiedenen Dateien
> sammelst und einbindest. (Mal abgesehen davon, dass es auch vor zwei Jahren
> Leute gab, die echt Objekt-Orientiert Programmiert haben. Auch mit PHP.

ja, und vieles nur mit rumbasteln, mangels OOP-Unterstützung durch PHP,
und was PHP nunmal immer noch nicht hat ist die Möglichkeit der
mehrfachen Definition einer Methode, oder ist das etwas schlechtes OOP?


> Und vor allem abgesehen davon, das eine echte Objektorientierte Programmierung
> auch Zeilen sparen kann.

'echte'? ich mach wohl falsche?

Grundlage ist ein Objekt 'Datum' welches auch als solches benutzt werden
soll, nur zusätzlich soll es halt auch möglich sein einzelne Methoden
auch losgelöst vom Objekt-Kontext nutzen zu können.


> du kannst nämlich in deinem Beispiel komplett auf
> die Prüfung eines optionalen Parameters $unixTimestamp in der Methode
> getAsIso() verzichten, da kein Parameter übergeben wird. Sind auch wieder 5
> Zeilen....)

diese 5 Zeilen stehen aber nicht im Controller.

wenn ich nun alle Daten eines Monats ausgeben will ist dies ein
unterschied von entweder 62 oder 31 Zeilen Code ... ok ist ein blödes
Beispiel, würde wohl keiner 31 die Funktion aufrufen, hirnrissig, aber
wenn er jedesmal überall wo er ein Funktion benötigt immer erst 'new'
machen muss verdoppelt dies die nötigen Codezeilen. Bei nur einem Aufruf
ist dies natürlich ein geringer Faktor.


> PS. Wenn du daran wieder etwas auszusetzen hast, rutscht das ganze eher in
> den OT-Bereich ab und du kannst mir deine Antwort ja direkt zukommen lassen
> ;-) 

ich find das gar nicht OT, hier geht es schließlich um grundlegende
Design-Fragen der OOP.


-- 
Sebastian Mendel

www.sebastianmendel.de
www.sf.net/projects/phpdatetime | www.sf.net/projects/phptimesheet

php::bar PHP Wiki   -   Listenarchive