Webserver-seitige Programmierung
24. Februar 2009 Roland
- Programmierung
- Variablenzuweisungen und Berechnungen
- Alter berechnen nur mit JavaScript
- Alter berechnen mit und ohne Javascript
- Code Optimierung
- Client Server Applikationsarchitektur
- Eigenschaften eines Webbrowsers
- Stylesheets
- Interaktive Webclients
- Mit HTML, oder SVG, interaktive Ein- Ausgaben erstellen
- Mit JavaScript aus einem Dokument Daten lesen
- Der Webserver
- Webserver-seitige Programmierung
- Datenbankanbindung
- Architekturprinzip Separation of Concerns
- Beschreibung von Anwendungsfällen
- Mit JavaScript einen wiederkehrenden Event erzeugen
- Kommunikationswege bei Einsatz von Java auf dem Webclient
- Einbinden der JavaScript Timer Klasse in eine Webseite
- AJAX Kommunikation ohne Fassaden Pattern
- JavaScript Klassen mit Object-Literal Syntax erstellen
- Knackpunkte bei der Klasse AsyncCommunication
- Speicherverbrauch in AJAX Applikationen
- Auch bei JavaScript immer die Variablen sauber deklarieren
- Eventhandler im JavaScript mit dem HTML Dokument verknüpfen
- Objekte in JavaScript mit JSON deklarieren
Wir haben ja schon darüber gesprochen, dass es viele verschiedene Webclients gibt. Wir können also nicht davon ausgehen, dass auf jedem Webclient JavaScript, Flash, PDF usw. vorhanden ist. Häufig ist ausser HTML nichts vorhanden. Also können wir interaktive Webapplikationen nicht nur auf dem Webclient bauen, sondern müssen die Funktionalität auf den Server installieren. Nur hier können wir sicher sein, dass wir unsere benötigten Runtime Umgebungen wirklich vorfinden.
Wir werden im Folgenden vor allem mit PHP arbeiten. Zuerst wollen wir jedoch schauen was der Webserver mit einem Get-Request macht, wenn eine PHP gezogen wird.

Der Webclient ruft den Webserver und fragt nach einer Datei die mit .php endet. Der Webserver interpretiert die Anfrage und stellt fest, dass es sich um eine Datei handelt die PHP beinhaltet. Er leitet die Anfrage des Webclients an den PHP Interpreter weiter. Dieser interpretiert die PHP Datei und liefert dem Webserver einen String zurück. Dieser String beinahltet die Ausgabe, die der PHP Interpreter generiert hat. Die Funktionen, die in dem PHP Dokument beschrieben wurden, werden somit nicht zum Webclient ausgeliefert.
Aufgaben
Wenn du eine HTML Datei schreibst und in dieser HTML Datei einen JavaScript Code einträgst, wo wird dieser interpretiert? Beschreibe den exakten Ablauf.
Stell dir vor du bindest ein Java Applet in dein HTML Dokument ein. Wie viele Aufrufe werden zum Webserver durchgeführt und wer interpretiert dieses Java Applet? (Client oder Server?)
Wenn du eine PHP Datei erstellst, wer interpretiert die PHP Seite?
Wenn du ein Java Application Server aufrufst, was wird an den Webclient zurückgeliefert?
Wenn du ein in Perl geschriebenes Script aufrufst, was wird an den Webclient zurückgeliefert?
Wenn du ein CGI Script aufrufst, wer interpretiert dieses Script?
Gebe fünf serverseitige Sprachen an.
Gebe fünf Sprachen an, die auf dem Webclient installiert und verwendet werden.
Korrekturen im Sequenzdiagramm
onli hat mich darauf hingewiesen dass ich zu dumm bin meinen Enterprise Architect zu bedienen
Ich hatte ursprünglich das Sequenzdiagramm wie folgt erstellt:

Hier könnt ihr sehen, dass die Return Werte von Internet, Webserver und PHP Interpreter keine Returnwerte sondern Function Calls sind. Und onli hat richtig erkannt, dass ich hiermit eine Rekursion erzeugen würde. Die Function Calls rufen auf den vorigen Systemen Funktionen auf. Unter Umständen können hierdurch Rekursionen entstehen. Falls, wie in diesem Diagramm dargestellt, jedoch andere Funktionen aufgerufen werden, dann entsteht hierdurch keine Rekursion. Aber ich habe keine Funktion die irgendwie outptut() heisst. Also ist das Diagramm ziemlicher Blödsinn.
Tja, im Enterprise Architect gibt es bei der Definition der Message eine Checkbox mit dem Namen isReturn. Wau! Kaum drückt man da drauf wird aus dem Function Call ein Returnwert. Tja, wie das alte Sprichwort sagt: “A fool with a tool is still a fool”
Vielen Dank für die Information!
Artikel mit ähnlichen Schlagwörtern
Der Beitrag wurde am Dienstag, den 24. Februar 2009 um 00:25 Uhr veröffentlicht und wurde unter Programmieren abgelegt.
Dir gefiel der Artikel? Dann abonniere doch den RSS Feed![]()
Du kannst die Kommentare zu diesem Eintrag durch den RSS 2.0 Feed verfolgen. Du kannst einen Kommentar schreiben, oder einen Trackback auf deiner Seite einrichten.









Hi
Ich finde es ziemlich gut, dass du mit Sequenzendiagrammen arbeitest, ich sehe die sonst fast nie im realen Einsatz. Gerade deshalb die Nachfrage: soll das Rechteck am Ziel der Return-Pfeile nicht eigentlich nur einen rekursiven Aufruf markieren? Das würde hier wenig Sinn ergeben.
Gruß
Hallole,
ich bin leider im Moment ziemlich Offline und konnte dir daher noch keine vernünftige Antwort liefern.
Ich muss mir dass Sequenzdiagramm und die Definintion davon kurz nochmal genauer ansehen. Ich habe das Ding einfach nur kurz mit dem Enterprise Architekt runtergezeichnet und bin mir im Moment nicht sicher ob ich hier einen Fehler gemacht habe oder ob das Tool da was merkwürdig interpretiert. Eine Rekursion ist auf alle Fälle hier vollkommener Unsinn.
Ich melde mich diesbezüglich spätestens am Freitag wieder. (Arbeiten und England verzögern bei mir das Bloggen ein wenig)
Grüssle
Roland