Mailinglisten-Archive |
Hallo Norbert, > irgendwie kann ich Deiner Argumentation nicht ganz folgen. > Als Beispiel habe ich getImageSize(); gewaehlt. bei 'ner vorgegebenen Funktion macht meine Argumentation auch keinen Sinn, da ich auf ein Posting geantwortet habe, in dem es explizit um eine _eigene_ Funktion ging. Es ist beim Design einer Funktion durchaus wichtig, was in der Peripherie geschieht, d.h. _welche_ Werte _wie_ übergeben werden. Ich hatte beispielsweise heute eine rekursive Funktion, die zu lahm für die Anwendung war. Mit ein wenig Umschreibearbeit konnte ich mit dem gleichen Datensatz per Referenz arbeiten, statt ihn als normale Funktionsvariable zu übergeben. (http://www.php.net/manual/de/language.references.whatdo.php) Als Resultat war die Funktion um einen Faktor 10(!) schneller und das obwohl der Datensatz gerademal ein paar dutzend Zahlen umfasste. Sicher fällt dies bei drei Variablen in einer Funktion, die möglicherweise nur einmal aufgerufen wird, nicht so ins Gewicht - wer sich jedoch angewöhnt darauf zu achten, der hat es im entscheidenden Moment einfacher. Deshalb, aus meiner eigenen Programmierpraxis heraus, hatte ich vorgeschlagen, mit einem optionalen Funktionswert, der Funktion zu sagen, wann nur die für die If-Anweisung notwendige Information übermittelt werden soll. > Wenn man alle JPG's eines Ordners sucht, waere es durchaus > praktisch: > <?php > if (getImageSize($file)[2] == 2) { > } > ?> > statt: > <?php > $IMG = getImageSize($file); > if ($IMG[2] == 2) { > } > ?> > zu schreiben. Dass die Entwickler sich hier nicht gerade sehr viel Zeit für die Funktion genommen haben, sieht man schon am Namen. Wer erwartet bei getImageSize schon einen Image-Type? Curios! > Aber es sieht einfach doof aus, trotz allem ... ;-) Ich wette es sieht nur doof aus, für Leute die etwas Programmiererfahrung haben ... ob das Unterbewusstsein uns hier hilft? ;-) Gruß, Thomas
php::bar PHP Wiki - Listenarchive