23.4 Das dreistufige Webanwendungsdesign 

23.4.1 Darstellungsschicht 

Die erste Stufe der Webprogrammierung ist die Darstellungsschicht. Dies stellt auch immer noch die am weitesten verbreitete Schicht dar. Der Webbrowser fordert mit dem HTTP-Protokoll eine Datei vom Webserver an. Der Webserver schickt dem Browser anschließend diese Datei, was meistens die Darstellung einer einfachen Webseite ist. Zur Darstellungsschicht gehört das ganze Look & Feel einer Seite, wie etwa Mausklicks, Lesevorgänge usw., eben einfach alle Interaktionen des Nutzers. Die Darstellungsschicht wird mithilfe von Webscripting-Sprachen wie z. B. HTML oder JavaScript erarbeitet. Dabei handelt es sich um interpretierte Sprachen, die erst beim Zugriff der Webseite auf den Webserver analysiert werden.
Hinweis |
Um Webseiten darzustellen, müssen die Regeln befolgt werden, die ein Webbrowser erwartet. Damit eine Webseite richtig dargestellt wird, sucht der Webbrowser nach einer bestimmten Struktur, die durch HTML geliefert wird. Die Hypertext Markup Language (HTML) ist eine Seitenbeschreibungssprache, die verwendet wird, um Webdokumente zu erzeugen, die Verknüpfungen zu anderen Webdokumenten (Hyperlinks oder einfache Links) enthalten. HTML ist keine Programmiersprache, sondern ein bestimmter Satz von Regeln, mit denen eine Webseite formatiert wird. |
Hinweis |
Als Webprogrammierer sollten Sie HTML verstehen. Egal, ob Sie Ihre Webseiten mit Skriptsprachen wie Perl oder PHP oder mit den Programmiersprachen C/C++ schreiben, Sie werden dabei immer wieder in Berührung mit HTML kommen. Zwar schreibt ein Webprogrammierer sehr viel Code für die gleich folgende Verarbeitungs- und Speicherschicht, dennoch werden Sie häufiger in die Verlegenheit kommen, dynamische Dokumente in der Darstellungsschicht zurückzuliefern. |
Häufig kann es auch sein, dass die Darstellungsschicht ebenfalls nur aus dynamischen Dokumenten besteht. Es muss sich also nicht immer um eine statische Webseite handeln. Da aber dieses Buch solche Bedingungen nicht voraussetzen kann, wurden die Beispiele so geschrieben, dass HTML-Ausgaben in Funktionen unterteilt sind. Und zwar so, dass es Ihnen im Prinzip egal sein kann, was diese Funktion ausgibt. Sie müssen den Funktionen lediglich die richtigen Argumente übergeben. |
23.4.2 Verarbeitungsschicht 

In der Verarbeitungsschicht finden Vorgänge wie Fehlerprüfungen, Plausibilitätsprüfung und Auswertung der Formularfelder statt. Wird z. B. eine E-Mail aus einer Webanwendung verschickt, wird in der Verarbeitungsschicht überprüft, ob die Eingaben richtig sind. Danach wird koordiniert, mit welchem E-Mail-Programm diese Mail versendet wird. In der Verarbeitungsschicht werden natürlich noch eine Menge anderer Arbeiten verrichtet. Dazu erfahren Sie ja im Laufe dieses Kapitels mehr. Die Verarbeitungsschicht wird häufig mit interpretierten Scripting-Sprachen wie Perl, PHP, ASP und Programmiersprachen wie C/C++ erledigt. Interpretierte Sprachen sind bei gewissen Verarbeitungsvorgängen recht langsam und werden daher auf der Serverseite ausgeführt. Und um nochmals auf das Beispiel mit dem E-Mail-Programm zurückzukommen: Auf der Serverseite ist dabei sichergestellt, dass die E-Mail mit einem bestimmten Programm (meistens mit dem Programm sendmail) versendet wird. Auf der Seite des Clients würde das wiederum voraussetzen, dass der Nutzer dieses Programm auf seinem Computer installiert hat. Das ist nicht unbedingt benutzerfreundlich.
23.4.3 Speicherschicht 

Irgendwann werden Sie auch Daten speichern wollen. Es gibt viele Gründe, Daten zu speichern, seien es Statistiken, Berechnungen oder Registrierungsdaten. Und je komplexer und umfangreicher die Daten werden, die Sie zu speichern beabsichtigen, umso besser muss die Lösung sein. Für einen simplen Besucherzähler reicht eine Textdatei aus, da sich darin immer nur eine Zahl befindet. Aber sobald Sie Anwendungen wie einen Online-Shop erstellen wollen, kommen Sie um eine Datenbank nicht mehr herum. Denn müssen Sie dabei Daten ändern, löschen oder Teile der Daten extrahieren, ist dies bei einer Datenbank häufig mit wenig Code zu bewerkstelligen. Heutzutage stehen auch eine Menge Datenbanklösungen für herstellerspezifische Erweiterungen zur Verfügung. Und vor allem: Viele dieser Lösungen kosten kaum Geld. Mehr dazu erfahren Sie in Kapitel 24, »MySQL und C«.
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.