PHP4/5 vs. JSP/Servlet mit Postgres

Also ich musste nun ein Projekt in PHP5 umsetzen und habe davor
viel mit JSP/Servlets gemacht. Was mir hier aufgefallen ist wie wenig
PHP4/5 im vergleich zu JSP 2.x zu bieten hat (selbst in früheren
Versionen).

Ich weiß gar nicht wo ich anfangen soll, ich versuchs aber trotzdem
einmal:

Mangelhafte Syntax
-nur generische Schleifen
-Schlechtes bis gar kein OOP
-Völlig umeinheitliche DB API-Funktionen
-Ennorme Versionsinkompatibilitäten die Reusability stark einschränken.
-Diverse Thirdparty Libs/Packages lassen sich oft nur mit Tricks verwenden.
-Unicode Unterstützung gibt es in fast keinen Templates/Libs

Stümperhafte, häufig genutzteDB-Interfaces
-Teilweise keine Prepared Statements möglich
-Connectionpooling nur mit Eigenarbeit oder Hacks machbar.
-DB-Interfaces im Schnitt Welten von JDBC/ADO.NET entfernt.
-DB-Interfaces bieten meist keine BuiltIn Lastverteilung.

Runtime Environment ist chronisch Unsicherheit
-Kein virtueller Objectcode, bösartiger Code lässt sich einschmuggeln.
-Code wird während Laufzeit nicht weiter optimiert.
-Per Default kein caching oder Runtime Optimierung.
-HTTP-Sessions nicht mit Bordmitteln skaliarbar.
-Keine BuiltIn just in Time Releasefähigkeiten (Deploy/Undeploy WebApp)
-Kein BuiltIn Farmdeployment auf WebServer Farmen (Loadbalancing)

XML-Frameworks
-Die Qualität der DOM-Parser lassen sich keinesfalls vergleichen

IDE’s
Es gibt die ZEND IDE die den Namen IDE auch verdient, diese ist
jedoch teuer und macht für das serverseitige Deployment die Properitären
ZEND Platform Libs die zig tausend EUR pro Webserver kosten aus.
ZEND IDE läuft nur auf Windows (und benutzt an vielen Punkte Java,
sowie Java Bridge)

Im Falle von Java gibt es folgende, ausgezeichnete IDE’s
-Eclipse (OpenSource / frei) (Win/Linux/Mac)
-NetBeans (OpenSource / frei) (Win/Linux/Mac)
-ORACLE JDeveloper (frei) (Win/Linux/Mac)
-IntelliJ IDEA (free Trial / nonFree) (Win/Linux/Mac)

Also selbst Perl räume ich mehr Möglichkeiten ein als PHP
und wenn man sich so anschaut wie wenig bisher Version 5
einsetzen und wie Stur an Version 4 festgehalten werden,
dann wird Version 6 auch keinen großen Erfolg haben.

Also ich bleibe definitv bei Java, notfalls auch ASP.NET aber
keinesfalls mehr PHP (es sei denn es geht nicht anders).
Es gibt zwar nicht viele Hoster die Tomcat am laufen haben,
aber Virtual Root Server und die reichen alle mal aus für
das eine oder andere Projekt.

(Sorry wenn das nun vielen die PHP toll finden nicht gefällt :smiley: )

Ich erinnere Dich mal dezent daran, daß es hier um PostgreSQL geht.

Andreas

werd erwachsen …

Hm, muss hier akretschmer zustimmen. Was hast dieses Posting hier mit dem Forum zu tun? Vielleicht solltest du das in unser Partnerforum schreiben. Da wäre es besser aufgehoben.

cu tb.

Partnerforum?

Partnerforum: Developer’s Guide - Hilfeforen für Entwickler

Sie über einem Jahr. :wink: Verlinkt als Unterforum im Bereich Programmierung und z. B. auf der Startseite gut ersichtlich. :wink:

cu tb.

Nie gesehen - kommt davon, weil ich mir immer nur die neuen Beiträge anschaue … :slight_smile: :slight_smile:

Hallo,

Naja es ging um ein Postgres basiertes PHP Projekt das so ähnlich laufen
sollte wie das Java JSP-Projekt. Der Datenbankpart war wirklich hart
zu verdauen in Sachen PHP5 da ich von Java halt mehr Komfort gewohnt
bin. Ganz sicher ist das nicht objektiv, aber die meisten Dinge die mir
negativ aufgefallen sind sagen mir eben das PHP und Postgres kein
Dreamteam sind ;D

ps:
im Programmierforum wurden viele Java Threads eröffnet, warum
soll da PHP mit Zusammenhang mit Postgres außen vor bleiben?

Ich programmiere bereits seit längeren mit PHP und habe bis jetzt absolut kein Problem mit PHP und PostgreSQL. Auch vom komfort her ist es nicht so schlimm wie du es tust. Es gibt zwar leider noch nicht allzuviel Objektorientierung in PHP, aber das kommt noch.

Als gute PHP IDE kann ich neben Zend das normale Eclipse PDT (PDT Project) empfehlen.

Es geht ja auch nicht um Probleme sondern darum wie viel weniger
PHP bietet und wie viel mehr Aufwand man treiben muss um eine
saubere Lösung hinstellen zu können.

Kann ja sein das PHP für den Normaldau einfacher zu verstehen ist,
die Lücken und Strukturschwächen die man jedoch am Anfang als
Anfänger unwissentlich in seinen Code und die gesammte Applikation
einschleppt sind es wohl kaum wirklich wert. Es erstaut eher
das es einige Firmen gibt die auf ein paar PHP Skripten Ihren
Unternehmenserfolg aufbauen, obwohl es für so ziemlich jedes
PHP Forum, CMS oder PHP sonstwas einen Exploit gibt.

Wenn man das ganze natürlich unter den Aspekt des Nachpflege
Auftagsvolumen betrachten will, dann hat es durchaus seine
Berechtigung, denn so kann man dem Kunden glaubhaft vermitteln
das irgendwo mal wieder gefrickelt werden muss.

Da solltest Du mal länger drüber nachdenken - Stichwort Prioritäten …

Das gibt es für fast jedes andere Programm aber auch. Das Problem bei PHP ist halt, dass es viele Anfänger benutzen und daher auch viele Fehler gemacht werden. Ein weiterers großes Problem ist halt, dass der Quellcode meistens von diesen Foren und CMS einsehbar ist und es dann nicht schwer ist, eine Lücke zu finden.

Wie kommste denn nun auf das schmale Brett? Nu weil eine Software
OpenSource ist heisst das doch nicht das man die Fehler darin auch
schneller ausnutzen kann! Guck Dir Dir mal OpenBSD an, das ist absolut
frei und offen im Source und seit mehreren Jahren ungeknackt. Wenn
man da PHP drauf installiert braucht man sich um BufferOverflows und
Co keine sorgen mehr machen.

Nee nee, die Probleme gehen viel tiefer und haben eher damit zu tun
das PHP ein schlampiges Grundgesign hat, keine Typsicherheit und
und es hackern nur allzu einfach macht da unsicheren Codefragmente
einzuspeisen, Formulare zu verseuchen, ddos lücken auszunutzen
und es deslab besonders einfach ist in PHP basierte Foren und CMS
Seiten einfach einzubrechen. Die Situation mit den Massenhostern
die aus Kompatibilitätsgründen alle Sicherheitsmechanismen
ausgeschaltet haben macht das ganze nicht einfacher.

Mir stellt sich eigentlich immer mehr die Frage, ob datenbankbasierte
WebApplikationen wirklich einfacher mit PHP zu machen sind als
z.B mit Phyton, Java, C# anstatt mit PHP oder ob das einfach nur ein
Mythos ist, weil das eben viele glauben.

Ich werde wohl bald in einer Firma mit massig PHP Altlassten arbeiten
müssen und davor graut es mir heute schon! Vor allem weil da auch
noch das zweite übel (MySQL) in uralt Versionen 3.x 4.xer Serie
“hartcodiert /myISAM-technisch” verbaut ist und sich nur schwer
herrauslösen lässt. Naja, Strohm und Miete muss alt bezahlt werden
und notfalls werde ich auch das machen, aber eben nicht besonders
gerne ;D

Das hier ist trotzdem immer noch nicht das richtige Forum, um über PHP zu diskutieren.

Da hast Du sicher recht (ausnahmsweise). Ich meine ich verstehe das eine
Firma z.B Codealtlasten in Sprache x hat und das man die vorhandene Codebase
nicht einfach verwirft, daß wäre ja auch wirtschaftlichwenig sinnvoll. Aber wenn
Du es alleine vom technischen Aspekt (also aus der Sicht des Entwicklers)
betrachten willst, dann darf man ja das eine oder andere anmerken (finde ich) ;d

Und gerade bei der WebApplikationsentwicklung, wo es auf schnelle,
und sicheres Zusammenspiel einer DB wie Postgres ankommt zeigt
sich doch immer wieder wie schwerfällig so unternehmen wie ZEND
teilweise auf Änderungen, Sicherheitsdinge und Berücksichtigung der
Userwünsche eingeht. Hier ist Postgres meines erachtens nach absolut
vorbildlich. Der ganze Entwicklungsprozess oder dass man bei jedem
Release oder auch Patch oft einfach immer wieder positiv überrascht
ist zeigt es irgendwie ganz deutlich. In einem Heise Artikel stand mal
folgende Formulierung, die ich recht treffend finde:

Der kommerzielle Softwareentwickler hat meist einen Projektmanager oder
direkt den Chef im Nacken der ihn zur Eile antreibt (time is Money) aber
der OpenSource-Entwickler gibt seinen Code erst dann raus, wenn
er ihn für absolut vertretbar und stabil hält oder bis der Code brilliant
ist.

So, sry aber ich verschieb das ganze jetzt in den Smalltalk. Da ist es besser aufgehoben…

cu tb

Sorry, aber in welcher Traumwelt lebst du?
Dann wären Freshmeat, Sourceforge und diverse andere Free-Software Seiten nicht überladen mit irgendwelchen dahingeklatschten Kleinprojekten, die kein Mensch sehen will, kein Entwickler je vernünftig dokumentiert hat und die maximal auf dem Rechner des Autors laufen …

Desweiteren ist denk ich auch die Community noch ein großer nicht zu unterschätzender Faktor. Wenn die drängelt kann es denk ich sehr leicht passieren, dass ein viel zu früher Release vorgenommen wird.

Desweiteren glaub ich mal hat es nicht viel Sinn darüber zu disktuieren wie schlecht die eine Programmiersprache und wie gut die andere ist. Jede hat seine Macken und jeder seine Vorlieben. Darum enden solche Diskussionen eigentlich immer im Streit.