JSP / Jquery / PHP - Vergleich der Scriptsprachen für gegebene Problemstellung

Dasun

Lieutenant
Registriert
Aug. 2012
Beiträge
849
Hallo Allerseits,

es handelt sich um folgende Problemstellung:

Ich bin Teil einer Projektgruppe, die im Rahmen ihres Studiums (Wirtschaftsinformatik) in einem Projektpraktikum eine Software entwickelt. Hierbei haben wir uns für die gegebene Problemstellung für eine Internetseite als Lösung entschieden.

Derzeit sind wir in noch in der Analysephase und wollen das Fachkonzept innerhalb der nächsten zwei Wochen fertig stellen und ins DV-Konzept und die ersten Funktionsimplementierungen übergehen.

Derzeit stellt sich uns die Frage, welche der oben genannten Scriptsprachen am besten für unsere Probleme geeignet sind. Hierbei sind folgende Funktionen wichtig:

- Verschieben (Positionieren) und Ein/Ausblenden von Div-Elementen
- Diagramme (Kuchen, Balken und Donut)
- Auslesen und Phrasen von XML-Daten
- Datenbankanbindung ( SQL / Wird aber mit Sicherheit von allen drei Scriptsprachen ähnlich gut unterstützt)

Sekundäre interessante Aspekte wären:

- Übernahmen von Variablen zwischen den Seiten
- Performance

Wo wären die Vor- und Nachteile der einzelnen Scriptsprachen und wie gut werden die benötigten Funktionen unterstützt ?

Ich versuche mich zwar seit 2 Tagen in das Thema einzulesen, doch ohne Erfahrung in diesen Sprachen fällt mir eine Beurteilung ziemlich schwierig, weswegen ich um eure Hilfe bitte.


Gruß Sebastian
 
PHP kannst du als Scriptsprache verwenden. JQuery ist etwas ganz anderes, damit kannst du dein UI dynamisch gestalten (z.B. dein verschieben von DIV-Elementen, ein/ausblenden) allerdings nicht an die Datenbank dran. Dafür brauchst du dann PHP.

PHP ist in der aktuellen Version (5.5) und auch mit der neuesten MySQL-Version (5.6) sehr performant. Für PHP gibt es auch diverse Tools, womit man Diagramme in allen Variationen generieren kann. Auch mit XML kann es umgehen.

JSP kenne ich leider nicht, daher kann ich das nicht beurteilen. Also mit PHP, MySQL und JQuery kann man das umsetzen, denke ich.
 
SQL - Abfragen der Datenbank bei relationen Datenbanken (MySQL, MariaDB)
PHP zum Ausliefern von Inhalten, sprich HTML Dokumenten
JQuery/JS - Aufbereitung und Manipulation von Daten auf Clientseite (Z.B. Änderung der Darstellung von Daten aufgrund geänderter Filterkriterien)

Das wäre mal so grob meine Meinung.
 
Von den drei genannten Sprachen (PHP, Java und JavaScript[jQuery ist eine Bibliothek, keine eigene Sprache]) kann nur JavaScript alle angesprochenen Punkte erfüllen. Dabei ist zwischen clientseitiger und serverseitiger Logik zu differenzieren. Dabei sehe ich folgende Kombinationen:

1. JavaScript in Form von Node.js serverseitig. jQuery und eine Chartlib (bspw. chart.js) für clientseite Darstellungen
2. Wie 1. nur das serverseitig PHP verwendet wird.
3. Wie 1. nur das serverseitig JSP verwendet wird.

Ich würde ich für "Anfänger" Variante 2 empfehlen (den Standardbrei), da es reichlich Tutorials gibt.
 
Eins vorweg: Ich hab mit JSP nicht gearbeitet... aber dafür gelten dieselben Sachen wie bei ASP, PHP, Python, Perl, Ruby,...
Und nochwas: jQuery ist keine Sprache, sonderne in Framework.

Seppi_W schrieb:
- Verschieben (Positionieren) und Ein/Ausblenden von Div-Elementen
Das ist Aufgabe von CSS... Natürlich kann man nur mit JavaScript CSS in Echtzeit manipulieren.

- Diagramme (Kuchen, Balken und Donut)
Mit einer serverseitigen Sprache erstellst du dein Diagramm... das heißt: PHP, JSP, ASP,... Ob du das Diagramm als Pixelgrafik oder, sinnvoller, als SVG erstellst, bleibt dir überlassen.
Natürlich kannst du die Werte auch als reinen Text übergeben und dann per JavaScript deinen Kuchen aufbauen. Da gibts Plugins für... ich würd aber die SVG-Variante nehmen.

- Auslesen und Phrasen von XML-Daten
Je nach Anwendungsfall... kann jede Sprache, es kommt darauf an, WO du es ausführen willst.
- Datenbankanbindung ( SQL / Wird aber mit Sicherheit von allen drei Scriptsprachen ähnlich gut unterstützt)
Kann JavaScript nur in seiner serverseitigen Variante, Node.JS... und das ist mehr Gebastel als dei Sache wert hat. Node.JS ist sehr sehr speziell, was seine Anwendungsfälle angeht. Toll, ja. Aber eben speziell.

- Übernahmen von Variablen zwischen den Seiten
- Performance
PHP kann scheiße langsam sein, wenn der Server schlecht konfiguriert ist. Andererseits kann es auf gut konfigurierten Servern rennen wie nur was. JSP leidet weniger unter schlechter Server-Config. "jQuery" hängt, da es beim Client abläuft, vom Besucher ab.
 
Die 3 Technologien die du da versuchst zu evaluieren sind so grundverschieden das da kein Sieger hervor gehen kann.

JQuery ... ist eine JavaScript Bibliothek zum manipulieren der ausgelieferten HTML-Seiten

JSP ... Technologie zum dynamischen erstellen von HTML-Seiten, Java basiert also zwingend ein Java-Applicationserver benötigt
--> Ist veraltet und sollte auch nur zur Darstellung von Inhalten und nicht für Logik verwendet werden.

PHP ... wird auch meist einfach dafür verwendet um dynamisch Webseiten zukreieren, ist aber eigentlich zu wesentlich mehr fähig.

Also entweder verbindest du JQuery und PHP oder du verwendest JSF.
 
Kann JavaScript nur in seiner serverseitigen Variante, Node.JS... und das ist mehr Gebastel als dei Sache wert hat
Viel "basteln" muss man da eigtl nicht mehr...
Code:
var mysql      = require('mysql');
var con = mysql.createConnection({
  host     : 'http://',
  user     : 'james',
  password : '007',
});

con.connect(function(err) {
  // ...
});
 
Nun ja, es ist ja nicht gerade so, dass es nur mit dem Request getan ist. Du musst erst einmal einen Node.JS - Server finden/aufsetzen. Einen PHP-Server kriegst du an jeder Ecke hinterher geschmissen. Selbst Ruby oder Python gibts überall. Aber Node.JS?
Danach musst du deine eigene Seitenaufruf-Logik darin schreiben, sowohl hinsichtlich statischer als auch dynamisher Ressourcen. Dazu ne eigene Template-Engine,...

Verglichen mit PHP ist das endlos viel Gemuddel, ohne dass man am Ende viel davon hat. Den Aufwand sollte man nur betreiben, wenn man die besonderen Stärken von Node.js wirklich braucht.
 
Ich bedanke mich bei allen für ihre Antworten. Ihr habt mir sehr geholfen, meinen Überblick zu verbessern.
 
Zurück
Oben