FB18 - Das Forum für Informatik

fb18.de / Off-Topic / Allgemeines

PHP vs J2EE etc

PHP vs J2EE etc 2005-02-04 16:50
Anonymer User
Warum meckern eigentlich alle über PHP? Mann kann damit doch ganz gute Internetseiten programmieren. Die Vermischung des Codes ist vielleicht nicht so gut und J2EE ist schon wirklich was anderes ;)
Aber was sind den die Hauptgründe gegen PHP?

Re: PHP vs J2EE etc 2005-02-04 17:36
Tzwoenn
- nicht skalierbar
- keine Unterstützung für Transaktionen
- keinerlei integrierte Verteilungsaspekte

Re: PHP vs J2EE etc 2005-02-04 17:48
Anarch
Der Hauptgrund gegen PHP nennt sich "ad-hockery". PHP als Template-System entstand als quick Hack - und diese Herkunft wird schwierig abzuschütteln. Das führt dazu, dass PHP "ganz nett" für kleine Aufgaben ist, aber je größer das Programm, desto aufwändiger wird die Verwendung von PHP.

Das Archetypische Beispiel für die Folgen der "ad-hockery": PHP bekam erst mit PHP4 überhaupt einen richtigen Syntax samt Parser - davor war das Parsing eine ad-hoc Lösung, die halt "irgendwie tut". Dies gilt immernoch für größere Teile der Sprache.

PHP ist schwach getypt und verwendet - ähnlich wie Perl - Auto-Typ-Konversion. Dabei handelt es sich um ein "DWIM"-Konstrukt (d.h. "Do What I Mean"). Es funktioniert normalerweise, aber es kann sehr schnell nach hinten losgehen - und je größer das Programm wird, desto wahrscheinlich wird dies, und desto schwieriger ist das zu finden.

Was PHP absolut fehlt ist ein vernünftiges Modulsystem. Zur Zeit werden tausende von Variablen bzw. Funktionsnamen verwendet, um die vielen "libraries" zur Verfügung zu stellen. Hinzu kommt, dass die Funktionen auch noch sehr inkonsistent benamst sind, was das Erinnern doch erheblich erschwert.

Und dann noch so Kleinkrams…
Die "variablen Variablen" wie $$a (um den Wert der Variable, deren Name in $a steht) zeugen von einer Sprache, die sich auf Scripting ausgelegt fühlt - normalerweise würde man für so etwas eine Table (hash, tree, whatever) verwenden.
include() arbeitet relativ zum Originalfile, nicht zum aktuellen File
etc.pp.

URLs:
http://www.ukuug.org/events/linux2002/papers/html/php/index.html
http://verplant.org/perl.vs.php.html
http://tnx.nl/php
http://www.bitstorm.org/edwin/en/php-sucks/

Das ganze wird übrigens von einem PHP-Author gut zusammengefasst:
I think PHP could become the BASIC of the next years. -- Thies (one PHP author)

Re: PHP vs J2EE etc 2005-02-04 17:53
Anarch
Achja, es gibt übrigens mehr als PHP und J2EE. Perl lebt immernoch, Python (mit Zope bzw. TwistedMatrix) bietet auch einiges an, etc.pp. ;-)

Re: PHP vs J2EE etc 2005-02-05 00:15
Anonymer User
es lebe ASP .NET

Re: PHP vs J2EE etc 2005-02-05 22:05
leif
es lebe ASP .NET
Mir ist neu, daß es bereits so schlecht um ASP.NET steht, daß man ihm diese Genesungswünsche zukommen lassen muß.

Re: PHP vs J2EE etc 2005-02-06 11:17
Azrael
asp mag ich nicht leiden, denn die Syntax gefällt mir überhaupt nicht

mit PHP hingegen habe ich nur gute Erfahrungen gemacht und sehe kaum Gründe zur Beanstandung. Gerade PHP5 hat viele Neuerungen, die es attraktiv macht!

include() arbeitet relativ zum Originalfile, nicht zum aktuellen File

=> es gibt auch noch require()…

[X] für PHP5

Re: PHP vs J2EE etc 2005-02-06 12:56
Anarch
[X] für PHP5

Du meinst mit PHP4 gabs ne Syntax, mit PHP5 gabs dann auch ne Semantik? :-)

Re: PHP vs J2EE etc 2005-02-06 16:23
Tzwoenn
=> es gibt auch noch require()…

Das arbeitet aber leider genauso.

Re: PHP vs J2EE etc 2005-02-07 22:39
ernie
verwende als include einfach:

include(dirname(__FILE__)."[relativerPfad]");
Damit erledigt sich das Problem…

Re: PHP vs J2EE etc 2005-02-08 03:32
georg
include() arbeitet relativ zum Originalfile, nicht zum aktuellen File

Was sind denn das Originialfile und das aktuelle File?

Ge - kann kein PHP - org

Re: PHP vs J2EE etc 2005-02-08 03:57
Tzwoenn
include() arbeitet nicht transitiv. Wenn man also eine Datei einbindet, muss man sich bei relativen Pfadangaben auf die ursprünglich vom Client aufgerufene Datei beziehen und nicht - wie man annehmen könnte - auf die, in der der aktuelle Aufruf geschieht.

Re: PHP vs J2EE etc 2005-02-08 04:01
georg
Ah, alles klar. Das ist in der Tat dämlich.

Re: PHP vs J2EE etc 2005-02-10 18:43
Brokkoli
ist natürlich die frage was für php und gegen j2ee spricht (was hat php an _wirklichen_ vorteilen?)

ich sehe da nicht wirklich etwas - ausser vielleicht, dass es bei fast allen webhostern zur verfügung steht..
ein servlet o.ä. zu schreiben ist selbst bei kleineren anwendungen ("gästebuch" o.ä.) einfacher und schneller.. und bei grossen anwendungen gibts in php sowieso fast nur noch chaos - also wofür überhaupt php?