ich blog zitate sprichworte kontakt

home > jan> studium > Seminararbeit Wirtschaftsinformatik

Softwaretechnologische Unterstützung bei der Entwicklung von Webapplikationen

Inhaltsverzeichnis

1. Einleitung
2. Serveranwendungen
2.1. Möglichkeiten der Bewertung von Softwareumgebungen
2.1.1. Interpretierbare Programmiersprachen
2.1.2. Datenbankzugriff
2.1.3. Portabilität und Datenbankabstraktion
2.1.4. Servertechnologie und Betriebssystemumgebung
2.1.5. Entwicklungsumgebung
2.1.6. Performance
2.1.7. Trennung von Code, Stil und Inhalt
2.2. Die verbreitetsten Varianten
2.2.1. ASP
2.2.2. PHP
2.2.3. JSP
2.2.4. ColdFusion
3. Prävalenz der unterschiedlichen Lösungen
3.1. Problem der Bestimmung von Zahlen
3.2. Versuch einer Bestimmung
4. Schlussbetrachtung
Quellenverzeichnis

1. Einleitung

Diese Arbeit beschäftigt sich mit Software, die dem Entwickler von Anwendungen für das World Wide Web (WWW) zur Verfügung steht. Im WWW finden die meisten Kommunikationen über das Client-Server-Prinzip statt. Daher können Anwendungen für das WWW entweder auf der Seite des Servers oder auf der Seite des Clients implementiert werden. Die am weitesten verbreitete Möglichkeit ist es, die Anwendung auf dem Server zur Verfügung zu stellen und den Zugriff seitens der Clients über einen Browser o.ä. zu ermöglichen. Es gibt auch Varianten, bei denen die Applikation zum Teil auf dem Client-Rechner stattfindet, ein anderer Teil aber dem Server vorbehalten ist.

In dieser Arbeit werde ich vornehmlich Serveranwendungen behandeln, da clientseitige Anwendungen zur Zeit noch vor einigen großen Problemen stehen. Ich werde zunächst einige Gesichtspunkte zur Beurteilung der Eignung einer Softwareumgebung vorstellen. Dann werde ich die verbreitetsten Technologien zur Erstellung von Serveranwendungen beschreiben und auf ihre jeweiligen Vorteile anhand der vorher eingeführten Gesichtspunkte eingehen.

2. Serveranwendungen

2.1. Möglichkeiten der Bewertung von Softwareumgebungen

In diesem Abschnitt wird auf die Gesichtspunkte eingegangen, die bei der Erstellung von Serveranwendungen eine Rolle spielen. Diese Punkte müssen bei der Planung eines Entwicklungsprojektes für das World Wide Web berücksichtigt werden. Ebenso kann man anhand dieser Punkte eine Einordnung der verfügbaren Technologien vornehmen, um festzustellen, welche für ein bestimmtes Projekt am besten geeignet ist.

2.1.1. Interpretierbare Programmiersprachen

Im WWW ist die Entwicklungszeit für neue Produkte sehr begrenzt. Galten bis vor kurzem bei Software noch Entwicklungszyklen von mehreren Jahren als Standard, bedeuten im Internet Entwicklungszeiten von 6 Monaten oft schon das Aus für einen Service. Das führt dazu, dass Webapplikationen wesentlich schneller und weniger perfekt realisiert werden müssen.

Sowohl in der Applikationsentwicklung als auch in der späteren Fehlerkorrektur ist es daher von großem Vorteil, wenn Codeteile schnell verändert werden können. Diese Bedingung erfüllen vor allem solche Programmiersprachen, die interpretierbar sind und daher keine Kompilierung benötigen. Zu ihnen gehören alle in dieser Arbeit näher erläuterten Programmiersprachen. Die Benutzung von Programmiersprachen wie C++ verbietet sich praktisch im WWW.

2.1.2. Datenbankzugriff

Das WWW verfolgt im Kern den Zweck, Informationen verfügbar zu machen und zu verarbeiten. Die verbreitetste Methode, um Informationen bereitzustellen, sind heutzutage Datenbanken. Eine Softwareumgebung für das WWW muss also als wesentlicher Punkt Möglichkeiten bereitstellen, um auf eine Datenbank zugreifen zu können.

2.1.3. Portabilität und Datenbankabstraktion

Eine Anwendung für das Internet muss, um erfolgreich zu sein, mit verschiedenen Datenbanken zusammenarbeiten können. Es kann sein, dass der zugehörige Service auf eine andere Datenbank portiert werden muss, weil nur diese spezielle Möglichkeiten der Datenmanipulation bietet oder weil der Code an einen anderen Entwickler weitergegeben wird, der mit anderen Datenbanken arbeitet oder schließlich auch, weil für eine existierende Datenbank ein Web-Interface entwickelt werden soll. Bei dieser Aufgabe helfen Abstraktionsschichten, die die unmittelbare Einfügung von SQL(Structured Query Language)-Code in die Applikation unnötig machen oder zumindest reduzieren.

2.1.4. Servertechnologie und Betriebssystemumgebung

Eine Webanwendung kann immer nur so gut sein wie der Server, auf dem sie aufsetzt. Dieser wiederum läuft als Anwendung auf einem Betriebssystem. Welche Server eine Programmiersprache unterstützt und auf welchen Betriebssysteme diese laufen, beeinflusst die Qualität der fertigen Anwendung maßgeblich.

2.1.5. Entwicklungsumgebung

Bei der Entwicklung neuer Applikationen ist ein unterstützender Faktor die Verfügbarkeit einer gut zu bedienenden Entwicklungsumgebung.

2.1.6. Performance

Der Faktor, der bei jeder Software entscheidend ist, ist die Leistung. Bei Webapplikationen kommt es dabei sowohl auf die Schnelligkeit der Programmausführung an als auch auf die Möglichkeiten, viele Prozesse gleichzeitig zu starten. Die einzelnen Anforderungen eines Clients erfordern meist nicht viel Rechenaufwand, aber durch den simultanen Abruf vieler unterschiedlicher Seiten eines Dienstes kann eine Software stark beansprucht werden.

2.2. Die verbreitetsten Varianten

Zur Erstellung von Serveranwendungen gibt es vier Möglichkeiten, die eine besonders weite Verbreitung erreicht haben:

ASP ist das Produkt von Microsoft. Es fußt auf dem Internet Information Server und ist kostenlos. Als Programmiersprache wird größtenteils Visual Basic Script (VBS) verwendet, aber auch die Verwendung von JavaScript ist möglich.

JSP ist ein entsprechendes Produkt, das auf Java aufbaut. Es basiert auf dem JRun Server.

PHP wurde von der Open-Source-Gemeinde entwickelt als Programmiersprache und Anwendungsbasis für das WWW. Es wird mit dem ebenfalls open-source verfügbaren Apache-Server verwendet.

ColdFusion kostet als einziges der genannten Produkte Lizenzgebühren. Es beinhaltet als Umgebung den ColdFusion Server und die Skriptsprache CFML (ColdFusion Markup Language).

Das heißt nicht, dass es sonst keine Möglichkeiten gibt, Webapplikationen zu entwickeln. Zu erwähnen sind in jedem Fall noch Perl, das über das Common Gateway Interface (CGI) mit allen Servern oder für Apache Server über das Modul mod_perl benutzt werden kann und der AOLServer mit der Programmiersprache TCL. Diese Varianten finden, obwohl sie nicht unbedingt schlechter sind, nicht dieselbe Beachtung bei Entwicklern und werden daher hier ausgegrenzt.

2.2.1. ASP

Die Microsoft Active Server Pages laufen auf dem Internet Information Server (IIS)unter dem Betriebssystem Windows NT. ASP bauen auf der ActiveX-Schnittstelle auf und unterstützen so die Verwendung der (*)Programmiersprachen JScript, VBScript und PerlScript. Seit der Version 2.0 sind ASP direkt in den IIS eingebunden.

Die meistgenutzte Programmiersprache für ASP ist jedoch Visual Basic Scripting (VBScript). Das bietet den Vorteil, dass Programmierer nicht erst umlernen müssen, um Active Server Pages zu erstellen. VBScript ist eine Skriptsprache, die aus Teilen von Visual Basic for Applications (VBA) besteht.

ASP sind als Softwareplattform für das Internet relativ weit verbreitet. Sie bieten den Zugriff auf Datenbanken über eine Abstraktionsebene, die ActiveX Data Objects (ADO). So ist der Zugriff auf alle Datenbanken möglich, die Open Database Connectivity (ODBC) unterstützen, und das sind so gut wie alle(*).

ASP greifen auf das Component Object Model (COM) von Microsoft zurück und bieten Zugriff auf die Objekte Request, Response, Server, Session und Application. Mit diesen Objekten wird der Zugriff auf die wichtigsten Server-Funktionalitäten bereitgestellt, wie zum Beispiel die Request-Header und auf dem Server befindliche Applikationen. Das Session-Objekt bietet noch zusätzlich die Möglichkeit, benutzerspezifische Daten zu speichern, dabei muss sich der Entwickler nicht mit Einzelheiten der Identifikation und Weitergabe des Status befassen.

ASP ist mit Abstand die meistgenutzte Möglichkeit, um Internetanwendungen zu erschaffen. Dies ist durch die Leistung durchaus gerechtfertigt, ASP steht hinter der schnellsten Möglichkeit PHP nur wenig zurück (*) . Dass mit dem IIS auch ASP jedem Nutzer von Windows NT zur Verfügung steht, erleichtert den Zugriff erheblich. Es ist nicht mehr nötig, wie bei einigen anderen der angeführten Möglichkeiten umständliche Installationsprozesse durchzuführen. Für professionelle Nutzung ist dies jedoch weniger ein Thema als die Sicherheit, die bei Active Server Pages teilweise zu kurz kommt. Bis vor kurzem war es z. B. noch möglich, sich den Quellcode einer ASP durch einen Zugriff mit dem Browser anzeigen zu lassen, und es ist fraglich, ob schon alle Server im Internet mit den nach Bekanntwerden dieser Sicherheitslücke von Microsoft herausgegebenen Patches ausgestattet worden sind.

Ein Vorteil ist die Entwicklungsumgebung für ASP. Sie lassen sich zuverlässig schon mit Microsoft Script Editor schreiben, der in Microsoft Office enthalten ist. Weiterhin gibt es mit Visual InterDev eine professionelle Lösung, die viele Aufgaben erleichtert.

Vorgefertigte Lösungen, um Inhalt unabhängig von der Logik der Seite zu speichern, gibt es für ASP nur in Form kommerzieller Content-Management-Systeme wie Ektron CMS100 (*). Es gibt aber eine Reihe von Hinweisen, wie man ein solches System implementieren kann (*).

2.2.2. PHP

PHP ist eine relativ neue Programmiersprache. Den Grundstein legte Rasmus Lerdorf 1994, um Funktionalität für seine eigene Hoempage bereitzustellen. 1995 waren zuerst die erste für andere nutzbare Version und dann die Version PHP/FI 2.0 verfügbar, die schon Datenbankzugriff ermöglichte. 1997 wurden Teile des PHP-Parsers von einer Gruppe vom Programmierern neu geschrieben, die sich im Laufe der Zeit an das Projekt angeschlossen hatten.(*) Die aktuelle Version 4 von PHP wurde im Jahr 2000 herausgegeben und basiert auf der Script Engine der Firma Zend. PHP 4 brachte signifikante Performance-Verbesserungen.

Das Besondere an PHP ist, dass es kostenlos und mit Quellcode verfügbar ist. Es kann mit Linux, dem Apache Server, den Datenbanken MySQL oder PostgreSQL eine vollständige kostenlose Plattform bieten, um Webapplikatinen anzubieten. Ebenso kann es unter Windows mit den o.g. Komponenten zusammenarbeiten und ist daher betriebssystemunanhängig. Die Verfügbarkeit von Quellcode ist gerade für ambitionierte Anwendungen wichtig, da der Entwickler sich so nicht auf eine Firma wie Microsoft oder Sun verlassen muss, um neue Möglichkeiten für seine Applikation zu erhalten. Im Ernstfall kann ein erfahrener Programmierer die gewünschten Änderungen relaiv einfach in PHP oder Apache einbinden. Ein weiterer großer Vorteil ist die Gemeinschaft von Entwicklern, die sich um Open-Source-Projekte bildet. Neuerungen werden mit hoher Geschwindigkeit implementiert, für Anwendungsfragen steht meist ein kompetenter Ansprechpartner zur Verfügung.

Die Leistung von PHP ist ein wenig höher als die von ASP, aber nicht wesentlich. Eine Stärke der Sprache sind leistungsfähige reguläre Ausdrücke, die die Textsuche einfach und schnell machen. In der Syntax ist PHP ähnlich aufgebaut wie ASP; die Code-Teile einer Seite werden durch -Tags in HTML eingebunden.

Die Datenbankanbindung in PHP ist in der Grundfunktionalität stark auf die jeweilige Datenbank ausgerichtet. Abstraktion ist so gut wie gar nicht vorhanden, was das Portieren der Anwendungen auf eine andere Datenbank umständlich macht. Es gibt jedoch in der weit verbreiteten Erweiterung "PHPLib" Datenbank-Klassen, die dieses Problem umgehen (*) . Sie können mit der nützlichen "include"-Funktion von PHP in die Anwendung integriert werden.

Integrierte Entwicklungsumgebungen für PHP sind kaum verfügbar. Unter Linux gibt es "Nexidion Designer", der eine passable Umgebung bietet, und unter Windows "PHPEd". Beide sind jedoch qualitativ nicht mit den entsprechenden Produkten für ASP oder ColdFusion vergleichbar.

In Sachen Templates gibt es für PHP eine klassenbasierte Lösung, die ebenfalls aus der Erweiterungsbibliothek PHPLib stammt (*). Eine andere Möglichkeit ist Fast Templates (*). Beide ermöglichen auf einfache Weise die Trennung von Code und Design, indem HTML-Vorlagen generiert werden, in denen Platzhalter für die dynamischen Teile gesetzt sind, die erst bei einer Anfrage generiert werden.

PHP-Howto

2.2.3. JSP

JSP ist eine Skriptsprache der Firma Sun und ist erst sehr kurz auf dem Markt. Die Sprache ist eine Erweiterung der Java Servlets-Technologie und eine Komponente der "Java 2 Platform, Enterprise Edition" (J2EE). Sie soll langfristig plattformunabhängig lauffähig sein, und zu diesem Zweck hat Sun die JSP-Spezifikation frei verfügbar gemacht. (*)

Auf dieser Basis hat die Apache Software Foundation den Tomcat-Server entwickelt, der von Sun auch als Referenzimplementation für J2EE benutzt wird. (*) Zur Zeit ist Tomcat der einzige Server, der sowohl JSP als auch Java Servlets komplett unterstützt. Ob die von Sun prophezeite Plattformunabhängigkeit also in der nächsten Zeit erreicht wird, steht noch nicht fest. Die Chancen stehen aber nicht schlecht, da die Entwicklergemeinde für Java bereits groß ist und die Umstellung auf Java Server Pages für diese Entwickler relativ einfach ist.

JSP bieten den Vorteil, dass über sie der Zugriff auf fast alle Java-Klassen möglich ist und insofern ein riesiger Vorrat an Funktionalität erschlossen wird. Erkauft wird dieser Vorteil allerdings mit einem deutlichen Mehr an Komplexität. Im Gegensatz zu den anderen genannten Skriptsprachen erfordert das Programmieren in JSP Typdeklarationen der Variablen. JSP ist daher das Produkt, das die längste Einarbeitungszeit für Nichtprogrammierer erfordert. (*)

Die Datenbankanbindung ist in JSP vorbildlich gelöst: Über Java Database Connectivity (JDBC) kann der Entwickler auf jede Datenbank zugreifen und die Zugriffe sogar abstrakt halten, so dass der fertige Code weitgehend datenbankunabhängig ist.

Dadurch, dass JSP eine relativ neue Möglichkeit für Serverapplikationen darstellt, ist die Technologie noch nicht so reif wie z.B. ASP. Das äußert sich darin, dass Entwicklungsumgebungen speziell für JSP noch nicht vorhanden sind, auch wenn "Forte for Java 1.0 Community Edition" eine passable Möglichkeit darstellt (*). Die Leistung von JSP steht ASP und PHP um Einiges nach (*) , was an der Tatsache liegen mag, dass der Tomcat-Server, der als Testserver benutzt wurde, noch relativ neu ist.

Um die Entwicklung mit JSP zu vereinfachen und den Quellcode der enstandenen Seiten übersichtlicher zu machen, hat Sun die JSP Tag Libraries entwickelt. Sie bieten den Vorteil, dass nun HTML-ähnliche Tags für Operationen innerhalb der Seite benutzt werden können, während der größte Teil des Codes in die Tag-Implementations-Klassen verlagert wird. Damit nähern sich JSP der Syntax von ColdFusion an, das ausschließlich auf solchen Tags basiert.

Für JSP gibt es eine fortgeschrittene Abstraktionsebene zwischen Code, Stil und Inhalt. Diese XML (eXtensible Markup Language)-basierte Anwendung trägt den Namen Cocoon und wird ebenfalls von der Apache Foundation entwickelt. Der Hauptteil dieser Anwendung besteht aus einem Prozessor für eXtensible Style Language Transformation (XSLT), der aus in XML-Dokumenten gegebenen Daten mittels Stilfestlegungen verschiedene Ausgaben generieren kann. Die Nutzung von XML macht diese Lösung zukunftsträchtig, da jede zukünftig eventuell nötige Präsentationsform unterstützt werden kann.

2.2.4. ColdFusion

ColdFusion ist das einzige der genannten Produkte, das nicht frei verfügbar ist. Der ColdFusion Server kostet in der Professional-Version ca. 1200$ und in der Enterprise Edition ca. 6000$. Dafür bietet das Produkt der Firma Allaire eine Fülle einfach integrierbarer Funktionalität, die man von den Konkurrenten so nicht erwarten kann, und eine einheitliche Syntax aller Funktionen (*).

ColdFusion ist im Gegensatz zu den anderen serverseitigen Technologien nicht auf Skriptstücken aufgebaut, die in den HTML-Code eingesetzt werden, sondern funktioniert mit zusätzlichen Tags, die wie HTML-Tags benutzt werden. Diese Tags rufen die Funktionen von ColdFusion auf, ähnlich wie die Tag Libraries in JSP die Erstellung dynamischer Internetseiten vereinfachen. Der resultierende Code wird ColdFusion Markup Language (CFML) genannt. Die Erstellung von Anwendungen in ColdFusion ist bei weitem am einfachsten (*), was vielleicht in naher Zukunft durch die ähnliche Orientierung bei der Entwicklung der JSP geändert werden könnte. Es ist geplant, die Tag Libraries auch in ColdFusion verfügbar zu machen.

Die Datenbankanbindung in ColdFusion ist gut gelöst, Treiber für ODBC und viele Datenbanken stehen zur Verfügung. Die Portabilität zwischen verschiedenen Datenbanken ist überzeugend, da das verwendete Tag <CFQUERY> für SQL-Anfragen datenbankunabhängig funktioniert (*).

ColdFusion bietet Unterstützung vieler Standards, die die Integration in Unternehmensprozesse erleichtern. Anzuführen sind vor allem COM, die Common Object Request Broker Architecture (CORBA) und Enterprise Java Beans (EJB) (*).

Für ColdFusion steht mit ColdFusion UltraDev eine wirklich leistungsfähige Entwicklungsumgebung zur Verfügung. Die Umgebung bietet sowohl Editoren für HTML, JSP, ASP und CFML als auch einen Debugger für clientseitige Java-Anwendungen. Die meisten Funktionen sind einfach durch Drag&Drop verfügbar (*).

Im Vergleich zu ASP und PHP ist ColdFusion etwas langsamer. Es liefert etwa zwei Drittel der Seiten pro Sekunde, die diese beiden Plattformen bewältigen können (*).

Insgesamt ist ColdFusion die Plattform für eine schnelle, reibungslose Entwicklung relativ komplexer Projekte. In Sachen Einfachheit ist es den Konkurrenten weit voraus, und durch die geplante Verschmelzung mit den Java Tag Libraries kann angenommen werden, dass in Zukunft die Weiterentwicklung der Plattform gewährleistet ist. Im Moment steht die Funktionalität von ColdFusion hinter dem komplizierteren Plattformen noch etwas zurück, aber auch hier gibt es eine große Gemeinschaft von Entwicklern, die angepasste Lösungen anbieten. Sie sind in sogenannten ColdFusion User Groups (CFUG) zusammengeschlossen.

Für ColdFusion gibt es ebenfalls das oben im Zusammenhang mit ASP erwähnte Content-Management-System Ektron CMS100. Allerdings ist in ColdFusion von vornherein auch ein Templating-System integriert.

3. Prävalenz der unterschiedlichen Lösungen

Wichtig für die Entscheidung zugunsten einer Softwareplattform ist auch die Frage, wie verbreitet diese zum jetzigen Zeitpunkt ist und wie ihre Beliebtheit sich in Zukunft vermutlich entwickeln wird. Je mehr Entwickler eine bestimmte Plattform benutzen, desto leichter ist es, vorgefertigte Lösungen für gegebene Probleme zu finden oder im Kreis der Entwickler Antworten auf bestimmte Fragen zu finden. Ebenso könnte es sein, dass eine Plattform, die wenig Beliebtheit hat, nicht mehr weiterentwickelt wird und veraltet. Da der Umstieg von einer Plattform zur anderen zur Zeit noch große Probleme bereitet, sollte die Entscheidung zugunsten einer Möglichkeit diese Aspekte mit einbeziehen.

3.1. Problem der Bestimmung von Zahlen

Das Internet ist nicht zentral organisiert, was sicher seine größte Stärke darstellt. Es funktioniert über einen Zusammenschluss vieler Rechner zu einem Netzwerk, in dem ein Rechner nur sehr begrenzte Informationen über den anderen hat. Daher kann die Gewinnung von Informationen über die Prävalenz bestimmter Technologien im Internet nur indirekt erfolgen. Ein Merkmal für die verwendete Technologie eines Servers ist der sogenannte Header des Hypertext Transfer Protocols (HTTP), den der Server als Antwort auf jede Anfrage mitschickt. Hier wird das Serverprogramm eindeutig identifiziert, und es werden noch einige andere Informationen geliefert.

Unter diesen weiteren Informationen sind zum Beispiel beim Apache-Server die installierten Module, und so lässt sich die Popularität von PHP aufgrund des Moduls mod_php zumindest grob einschätzen. Leider bieten ColdFusion, JSP und ASP eine solche Möglichkeit nicht, da sie durch keine ähnliche Möglichkeit identifiziert werden können.

3.2. Versuch einer Bestimmung

Im Internet werden monatliche Studien von Netcraft (*)und SecuritySpace (*) angestellt, die Informationen über die Prävalenz der Servertechnologien und andere Servermerkmale aufgrund der oben genannten Mechanismen bereitstellen. Daraus ist erkennbar, dass PHP als Modul im September 2001 auf 6,6 Millionen Domains installiert war (*). Das heißt nicht, dass alle diese Domains PHP nutzen. Eine weitere Möglichkeit, die Popularität der Technologien zu schätzen, ist die Verwendung von Cookies mit plattformspezifischen Namen. ASP benutzt für sein Session-Management den Cookie ASPSESSIONID*, JSP benutzt JSESSIONID, PHP arbeitet mit PHPSESSID und ColdFusion nennt seinen Cookie CFID. Laut SecuritySpace hatten diese Cookies bei einer Anzahl untersuchter Server die Verbreitung (*), die in Tab. 1 gezeigt wird. Da die vier Cookies nicht die einzigen sind, die von den Servern verwendet wurden, addieren sich die Prozentzahlen nicht zu 100.

CookieVerbreitung in %
ASPSESSIONID*41,4%
CFID8,6%
JSESSIONID4,4%
PHPSESSID2,9%

Diese Zahlen können nicht als repräsentativ gelten, aber sie geben Hinweise auf die tatsächliche Verbreitung der Werkzeuge.

Eine letzte Möglichkeit zur Bestimmung der Popularität ist die simple Zählung von URLs im Netz, die als Endung die spezifischen Endungen der einzelnen Plattforman aufweisen. ASP-Seiten enden auf .asp, JSP-Seiten auf .jsp, PHP-Seiten variieren zwischen .php, .php3 und .phtml und ColdFusion-Seiten enden auf .cfm.

Die Suche nach diesen URLs über zwei Suchmaschinen, die dies erlauben , zeigt folgende Ergebnisse:

Endung Anzahl gefundener Seiten bei AltaVista Anzahl gefundener Seiten bei Northern Light
.asp 10.479.179 7.550.878
.php 1.415.062 1.189.241
.php3 1.840.048 876.523
.phtml 876.806 392.181
Summe PHP 4.131.916 2.457.945
.cfm 2.893.142 1.327.894
.jsp 309.724 132.673

Diese Ergebnisse bieten zumindest eine relative Vergleichbarkeit der unterschiedlichen Plattformen. Verglichen mit denselben Daten im Oktober 2000 zeigt sich, dass PHP ColdFusion überholt hat und die Gesamtzahl aller Seiten enorm gestiegen ist (*). JSP hat sich ebenfalls enorm entwickelt, die Vormachtstellung von ASP ist unangetastet.

Diese Zahlen sind natürlich ebenfalls ungenau, doch es ist möglich, die Plattformen auf dieser Basis in eine Reihenfolge der Beliebtheit zu stellen.

4. Schlussbetrachtung

Es ist unmöglich, aus den beschriebenen vier Möglichkeiten eine auszuwählen, die in jeder Situation die beste ist. Jede der Lösungen hat ihre spezifischen Vorteile, und die Entscheidung über die Nutzung eines bestimmten Systems muss auch davon abhängig sein, wie die Programmiererfahrungen der beteiligten Programmierer sind. Wenn die Programmierer, die für die Implementation der Anwendung zur Verfügung stehen, in Java versiert sind, bieten sich die Java Server Pages an, bei Vorkenntnissen in VisualBasic ASP.

Unabhängig davon werde ich noch einmal zusammenstellen, welche die spezifischen Stärken der einzelnen Plattformen sind.

Die Schnelligkeit und Einfachheit der Erstellung einer Anwendung spricht eindeutig für ColdFusion.

ASP eignet sich aufgrund seiner einfachen Integration in den Microsoft IIS und bei Vorkenntnissen in VisualBasic.

PHP bietet sich an, weil es bereits auf kleineren Maschinen sehr schnell ist und, da es ein open-source-Projekt ist, viele Zusatzmodule bereitstehen.

JSP oder Servlets sind für große Unternehmen geeignet, da die Java-Sprache eine ungeheure Vielfalt und Leistungsfähigkeit bereitstellt.

Abschließend möchte ich bezweifeln, dass eine der Plattformen sich in näherer Zukunft die anderen verdrängen oder aus der Konkurrenz ausscheiden wird. Die Weiterentwicklung scheint jeweils gewährleistet, und die spezifischen Eigenschaften sorgen dafür, dass jedes Produkt eine Nische besetzen kann.

Links:
PHP vs ASP
PHP vs. ASP vs. CFML vs. JSP
Vergleich bei ZDNet Popularität aller vier
PHP vs. ASP, speziell OpenSource
Netcraft


aktualisiert: 05.07.2004 ich@jan-koch.com