Einzelnen Beitrag anzeigen
  #5  
Alt 06.08.2007, 16:15:13
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
AW: Vergleich mit ASP.net

Zitat:
Zitat von FabianWesner Beitrag anzeigen
Das würde mich auch interessieren, Danke!
okay, hier:

Zitat:
Was stört mich an PHP?

1. Vermischung von OOP und funktionaler Programmierung!

Die Möglichkeiten zur Bearbeitung von Dateien sind rein funktional (fopen, fread, fwrite, fclose).

Will man mit Verzeichnissen arbeiten, arbeitet man mit dem dir() Objekt; ganz abgesehen davon, ist es allgemeine Konvention, dass Klassennamen mit einem Großbuchstaben beginnen.

2. Inkonsistenz der Stringfunktionen

Keine allgemeingültige Reihenfolge von Haystack und Needle; der zu bearbeitende String steht an keiner festen Stelle (wie zum Beispiel als erster Parameter).

3. Inkonsistenz von Arrayfunktionen

Mal wird das zu bearbeitende Array übergeben und das neue zurückgegeben, mal wird mit einer Referenz gearbeitet.

4. Das Session-Array

Unter http://www.php.net/manual/de/language.types.array.php steht:

Ein Schlüssel kann entweder ein integer oder ein string sein.

Natürlich nicht das Session-Array, welches ein assoziatives Array ist.

Allerdings:

<?php
session_start();
$_SESSION[ 0 ] = 'a';
$_SESSION[ "0" ] = 'b';
?>

Hier enthält $_SESSION zwei Einträge.

ruft man dann

<?php
session_start();
print_r( $_SESSION );
?>

auf, ist die Session leer, also auch keine assoziativen Schlüssel, deren Darstellung als Zahl äquivalent ist.

Also kann $_SESSION doch numerische Schlüssel enthalten, allerdings können diese nicht in der Session-Datei abgelegt werden (wieso auch immer).

5. Threads

Wo bleiben sie?

6. __toString()

Die Methode __toString() sollte eigentlich immer dann aufgerufen werden, wenn ein Objekt in einem String-Kontext aufgerufen wird; sagt man

echo $objekt;

wird $objekt->__toString() aufgerufen. Bei

echo "Objekt: " . $objekt;

allerdings nicht.

7. Sicherheit

Wenn sich jahrelange Mitglieder aus dem Security-Team verabschieden, gibt mir das zu denken.

8. Abwärtskompatibilität

Warum muss immer alles abwärtskompatibel sein? Wenn man in der Vergangenheit einen Fehler gemacht hat, sollte man ihn sauber beseitigen und ihn nicht noch jahrelang mit sich rumschleppen.
ich weiß, dass ich teilweise krümelpickerei betreibe, aber ich hab durch mein studium schon einige sprachen kennen gelernt und mich zudem recht lange und intensiv mit php beschäftigt, von daher will ich keinen flamewar betreiben sondern einfach nur mal kund tun, was mich stört. sicher findet man immer punkte an einer sprache die einen stören, aber grade punkt 1, 5, 7 und 8 nerven mich massiv.

Geändert von feuervogel (06.08.2007 um 16:16:13 Uhr)
Mit Zitat antworten