Lernsituation: Web-Services, Web-Sockets und objektorientierte Programmierung
Die Mathematik-Lehrerinnen und Mathematik-Lehrer der "Technischen Schulen des Kreises Steinfurt" möchten im Mathematikunterricht
selbst erstellte kollaborative Lernsoftware in der Oberstufe einsetzen: Analysis, Vektorrechnung und Wahrscheinlichkeitsrechnung.
- Erstellen Sie eine Web-Applikation, die ein Thema aus den Bereichen Analysis, Vektorrechnung oder Wahrscheinlichkeitsrechnung behandelt.
- Erweitern Sie die Web-Applikation mit Hilfe von Web-Sockets um kollaborative Fähigkeiten (hier ein Beispiel, wie Web-Sockets implementiert werden können)
Java: Objektorientierte Programmierung
Die Datei Vektorrechnung.zip enthält ein Beispiel-Implementierung für eine Vektor-Klasse,
die eigenständig Berechnungen "mit sich selbst" ausführen kann.
Voraussetzung: Java (JDK), NetBeans (IDE) und ein Tomcat (Applikationsserver)
Download Vektorrechnung.zip
Benutzerführung
Kundenwunsch: Benutzerführung bei einem Preisausschreiben
Weiterer Kundenwunsch: Adressen beim Preisausschreiben normieren
Nach Aufruf der folgenden Musterlösung können Sie wie gewohnt die Quelltexte (html, css und js) über
"rechte Maustaste + Seitenquelltext anzeigen" begutachten. Sie gelangen zuerst in den HTML-Quelltext
und finden dort auch die Verweise auf die eingebundenen CSS- und JavaScript Dateien, die Sie dort
nur anklicken müssen.
Musterlösung für obige Kundenwünsche
Relationale Datenbanken Design und Erstellung von relationalen Datenbanken
WebSockets: HTML5-Echtzeitanwendungen entwickeln
FAQ
WebSocket ist ein auf TCP basierendes Protokoll, welches parallel zu HTTP
auf dem gleichen Port (meistens 80) genutzt werden kann. Im Gegensatz zu
HTTP-Anfragen wird die zugrundelegende TCP-Verbindung beim WebSocket-Protokoll
offen gehalten. Diese bidirektionale Standleitung ermöglicht die Erstellung
von Echtzeitanwendungen (z.B. Spiele und Chat-Systeme). Zentrale Instanz ist
dabei ein Server, der das WebSocket-Protokoll implementiert und mit allen
Clients gleichzeitig eine feste Verbindung aufbaut. Da der Server auch selbst
aktiv Nachrichten an seine Clients versenden kann, können die Clients über den
Server miteinander kommunizieren. Damit ist es sehr einfach möglich, kollaborative
Anwendungen zu programmieren.
WebSockets sind als reines Protokoll nicht an eine Programmiersprache gebunden.
Auf Server-Seite sind im Bereich der WebSockets häufig Application-Server wie
Tomcat im Einsatz,
über die WebSockets-Endpoints bereitgestellt werden können, die in Java implementiert wurden.
Auf der Client-Seite kommen bevorzugt Web-Browser zum Einsatz. Seit HTML5 gehören
die WebSockets zu den Bordmitteln. Die Verbindung zum Server wird über JavaScript
aufgebaut, gehalten und verwaltet.
WebSocket (Wikipedia)
Using the WebSocket API in a Web Application (NetBeans/Java)
WebSocket (MDN web docs)
Einführung zu WebSockets: Sockets im Web (HTML5 Rocks)
HTML5 - WebSockets (HTML5 tutorialspoint)
Primitive Datentypen und Wrapper-Klassen FAQ Primitive Datentypen im Überblick Konvertierungen in eine String-Repräsentation
Arrays FAQ Informationen über Arrays Arrays mit for-Schleife abarbeiten
Kontrollstrukturen FAQ if-Anweisung for-Schleife while-Schleife
MD5-Hashes FAQ Verschlüsselung von Passwörtern mit Hilfe von MD5-Hashes Wie verlaufen Registrierung und Anmeldung auf Websites, die ihre Benutzerkennwörter MD5-verschlüsselt in einer Datenbank speichern? Anmeldung/Registrierung im Shop (dort werden die Passwörter auf dem Server als MD5-Hash gespeichert) Diebesgut: Gestohlene Mail-Adressen und verschlüsselte Passwörter Mail: Stellungnahme zum Presseartikel über den Einbruch in unser Shop-System Wie können wir ein Programm-Modul entwickeln, das die gestohlenen MD5-Hashes in Klartext-Passwörter zurückwandelt?
Paar Programmierung FAQ