Prof. Dr.-Ing. habil. Peter Sobe HTW Dresden
Fakultät Informatik / Mathematik
Vorlesung für Master-Studierende
„Geoinformatik/-management“
Sommersemester 2017
Internettechnologien
Prof. Dr.-Ing. habil. Peter Sobe Fakultät Informatik/Mathematik Raum Z 363 Tel: 0351 462 3589 Email: sobe@htw-dresden.de
Zur Person:
Erlangen von Überblickswissen:
Sie lernen die Technologien kennen, wie man auf der
Hardwarebasis eines Rechnernetzes verteilte Anwendungen (Software) entwickeln kann, die miteinander kommunizieren (Netzwerkprogrammierung, z.B. über Sockets).
Sie verstehen die Begriffe zur Internettechnologie mit ihrem Inhalt.
Sie sind in der Lage, das Gebiet Internettechnologien/
Webtechnologien richtig einzuordnen.
Ziele (1)
Kenntnis der Architektur und Fähigkeit zur Programmierung:
Nutzung eines Webservers und das http-Protokoll
XML-Sprache und deren Verarbeitung
Nutzung des clientseitigen Scriptings
(JavaScript, Verarbeitung von XML, DOM-Zugriff und -Manipulation) und auch AJAX, JQuery
PHP für serverseitiges Scripting
Exkurse NodeJS, ASP.NET, Java JSP, Java Servlets
Webservices: WSDL, Schnittstellen über SOAP und REST Kenntnis der Konzepte und der Architektur:
Ziele (2)
Vorlesung: 2 SWS, wöchentlich
Donnerstag 11:10 Uhr, Z 722 Praktikum: 3 SWS, wöchentlich
Donnerstag, ab 8:20 Uhr, Labor S 130
Start des Praktikums: 30.3.2017 mit einer Einführung in die Laborsoftware und Netzinfrastruktur,
erstes Aufgabenblatt
danach wöchentliches Praktikum mit weiteren Aufgabenblättern
14 Donnerstage, voraussichtlich 12 Aufgabenblätter
Zeitplan und Termine
Projektarbeit als Prüfungsvorleistung (ohne Note)
Schriftliche Prüfung im Anschluss der
Vorlesungsperiode im Sommersemester 2017
90 Minuten
bisher mit Material (Mitschriften, Bücher, u.ä.)
Prüfungsleistungen
Vorlesungsfolien und Praktikumsaufgaben als PDF unter http://www.htw-dresden.de/~sobe
Lehrmaterial und Literatur
Literaturempfehlungen:
Bauer, G.: Architekturen für Web-Anwendungen, Vieweg+Teubner 2009
H. Schröder: RRZN-Handbuch, JavaScript 1.8 (RRZN-Handbuch), Herdt-Verlag 2010
A. Dithfurth; PHP5.3 - Fortgeschrittene Techniken der Web- Programmierung (RRZN-Handbuch), Herdt-Verlag 2010
Gamperl, J.: Ajax Web 2.0 in der Praxis, Galileo Press Bonn, 2006
C. Wenz: JavaScript und AJAX - Das umfassende Handbuch, Rheinwerk Verlag GmbH 2007 (Online Version unter https://www.rheinwerk-
verlag.de/openbook/?GPP=opjsa)
A. Hollosi: Von Geodaten bis NoSQL: Leistungsstarke PHP-Anwendungen:
Aktuelle Techniken und Methoden für Fortgeschrittene. Carl-Hanser-Verlag,
Lehrmaterial und Literatur
Die meisten Sprachen, Formate und Protokolle im Web sind offengelegt
Entsprechende Standards können oft Online bezogen werden:
http://www.w3.org/TR/...
Lehrmaterial und Literatur
1. Internet-Grundlagen und Überblickswissen
OSI 7-Schichtenmodell
Verteilte Anwendungen,
allgemeines Client-Server-Modell
Sockets und Pipes als Kommunikationsmodell auf der IP-Schicht
WWW – ein klassisches Client-Server-System (C/S) mit http als zustandsloses Verbindungsprotokoll in der
Anwendungsschicht
Architektur von Web-Applikationen
Möglichkeiten des clientseitigen Scriptings
Möglichkeiten des serverseitigen Scriptings
Multi-Tier-Architekturen von Web-Applikationen
Inhalt (1)
2. WWW-Protokolle und -Formate
HTTP, allgemeiner syntaktischer Aufbau
Standardablauf der Kommunikation und wichtige Methoden des HTTP-Protokolls
Aufbau von Web-Applikationen unter Nutzung von HTTP, HTML, DOM, XML, CSS
Inhalt (2)
3. Clientseitige Verarbeitung und JavaScript
Kurzeinführung/Auffrischung: JavaScript
Dynamische Effekte auf Webseiten durch JavaScript
Clientseitige Verarbeitung von XML-Daten mit JavaScript unter Nutzung des DOM
Objektorientiertes Programmieren mit JavaScript
Inhalt (3)
4. Anwendungen mit serverseitiger Verarbeitung
PHP
Einführung in die Sprache
Formularverarbeitung mit PHP
Dateizugriff aus PHP-Skripten
PHP: Cookies, Sessions
Datenbankzugriff aus PHP-Skripten
Exkurse:
Relationale Datenbanken und SQL
Microsoft ASP (Active Server Pages, IIS, .NET)
Server-sided JavaScript / NodeJS
Inhalt (4)
5. AJAX Technologie
WEB 2.0 und Asynchronous JavaScript And XML (AJAX)
programmgesteuerter Zugriff auf Ressourcen des Web- Servers unter Nutzung des XMLHTTP-Objektes und seiner Methoden
JQuery/AJAX
Parameter-/Datenübertragung: Text, XML, JSON
Verarbeitung von XML auf Serverseite
Inhalt (5)
6. Web Services
Begriff und Eigenschaften von Web-Services
Serviceorientierte Architektur und Komponenten
Protokolle: SOAP und REST
SOAP-PHP mit einem Beispiel
Ein Beispiel für einen REST-basierten Webservice 7. Cloud-Computing
Begriffe SOA, SOC, Grid, Cloud
Verschiedene Arten von Cloud-Computing
Beispiele für Cloud-Computing-Infrastrukturen
Inhalt (6)
Einordung der Techniken
Web-Browser
Web- Server
HTTP, HTML- Dokumente
JavaScript
CGI
XML
Externe Skripte und Daten
PHP
Ajax-Engine
Dateisystem und
1969: ARPANET (U.S. Military) als Vorgänger des Internets 1982: Internet mit TCP/IP Implementierung
1982: E-Mail (SMTP-Protokoll)
1985: FTP-Protokoll (File Transfer über TCP-Verbindungen) 1989: Erfindung des WWW am CERN, damit verbunden
HTTP (Hypertext Transport Protocol), DNS (Distributed Name Service,1987) 1993: NCSA entwickelt MOSAIC-Browser
1994: Entwicklung von PHP zum serverseitigem Scripting
Zeitliche Entwicklung des Internets
und der Technologien (1)
1995: Java: eine C++ähnliche Sprache mit stärkerem Bezug auf Ausführung in vernetzten Systemen
1995: Erscheinen von JavaScript zur Ausführung im Webbrowser
1998: Metasprache XML (eXtensibe Markup Language)
1999/2002: erste Erwähnung / Begriffsnutzung von Web 2.0 (ein neues Nutzungsparadigma für das Internet
das durch neue Technologien ermöglicht wurde) 2002: Web-Services: Dienste mit XML-basierter
Schnittstellenbeschreibung und XML-Interfaces
Zeitliche Entwicklung des Internets
und der Technologien (2)
ab 2000: weitere Web-Programmiersprachen
• Python 2.0 mit Web-Framework, d.h. eigene HTTP- Server- Klasse, Webbrowser-Controller
• ASP.NET (Active Server Pages) mit Web Forms
• JAVA-Technologien für Web-Client und –Server- Integration
• Ruby (Skriptsprache),
Web-Anwendungs-Framework: Ruby on Rails
etwa 2005: AJAX (Asynchroneous JavaScript and XML) als Technologie auf der z.B. Google Maps aufbaut
Zeitliche Entwicklung des Internets
und der Technologien (3)
Heute:
Web auf Smartphones: Frameworks wie z.B. Cocoa
(Apple), Android (Google) mit Web-Unterstützung IoT: Internet of Things
neue Protokolle für Vernetzung viele kleiner „smarter“
Geräte, neue Protokolle z.B. MQTT