phpbar.de logo

Mailinglisten-Archive

AW: [php] Verständnissfrage: funktionen VSklassen?

AW: [php] Verständnissfrage: funktionen VSklassen?

David Molineus david at molineus.de
Sam Dez 18 23:42:52 CET 2004


Hallo Michael,

>Hmm, naja das verstehe ich eben nicht. Ich meine, ich programmiere schon
>mehr als 6 Jahre (selbst bei gebracht) und verdiene damit auch ganz gut
>meine Brötchen, doch hab ich den Unterschied bis heute nicht kapiert.
>  
>
Bei mir hat es auch recht lange gedauert bis ich den Sinn von Klassen 
verstanden habe und nochmals etwas wie es sinnvoll ist eigene Klassen zu 
entwerfen. Dabei hat mir sehr geholfen von PHP-Projekten (reine 
OOP-Projekte) den Code zu studieren. Dabei habe ich mich hauptsächlich 
mit Frameworks (Binarycloud, Mojavi, WACT) beschäftigt. Vielleicht hilft 
dir das auch?

>1. was bitte ähm ist ein "objekt"?
>  
>
Rein theoretisch ist ein Objekt eine Instanz einer Klasse. :-D    Dabei 
repräsentiert das Objekt z.B. eine Datenbankverbindung, ein Template, 
eine E-Mail. etc. Bei einer E-Mail könnte das so aussehen (mach ich so 
in einem Projekt):

$mail = new Mail();
$mail->setFrom('k.heinz at domain.tld', 'Karl Heinz');
$mail->addTo('mueller at domain.tld', 'Hans Müller');
$mail->addTo('mail at domain.tpl');
$mail->setTextBody('Eine E-Mail');

$transport = new SmtpMailTransport();
$transport->login('smtp.domain.tld', 'user', 'pwd');

$mail->send($transport);

Der Vorteil der Verwendung eines Objektes für die Mail ist, dass ich mir 
als Programmierer mit der fertigen Klasse keine Gedanken machen muss wie 
die E-Mail letzendlich aussehen muss und vor allem wie die Daten intern 
gespeichert werden. Dieses Verhalten ist warscheinlich schwer mit 
Funktionen nachzuahmen ohne globale Variablen zu verwenden.

>3. hm und anscheinend sind klassen schlechter für die performance?
>  
>
Das kann man so sagen, da ja letzendlich das komplette Objekt-Model mit 
allen Klassen generiert werden muss.

>4. oder bringt das vorteile wenn mehrere programmierer an nem projekt
>arbeiten? Weil ich mit dem gedanken spiele meins als OpenSource an zu
>bieten.
>  
>
Ob es vorteilhaft ist liegt wahrscheinlich an der Struktur des Codes. Es 
kann auch mit prozedualen Code eine sinnvolle Arbeitsteilung 
stattfinden, erfordert imho mehr Disziplin.

Gruß,
David


php::bar PHP Wiki   -   Listenarchive