Clientseitige Webprogrammierung (Sommersemester 2017)
Dozent:
Prof. Dr. Christoph Meinel
(Internet-Technologien und -Systeme)
Tutoren:
Dr. Jan Renz
Thomas Staubitz
Christian Willems
Franz Liedke
Allgemeine Information
- Semesterwochenstunden: 4
- ECTS: 6
- Benotet:
Ja
- Einschreibefrist: 28.04.2017
- Lehrform: SP
- Belegungsart: Wahlpflichtmodul
Studiengänge, Modulgruppen & Module
- OSIS: Operating Systems & Information Systems Technology
- OSIS: Operating Systems & Information Systems Technology
- ISAE: Internet, Security & Algorithm Engineering
- ISAE: Internet, Security & Algorithm Engineering
Beschreibung
Historisch wurden Web-Anwendungen nach einem Client-Server-Prinzip gebaut. Die Datenverarbeitung erfolgte hierbei auf den Servern. Das dort gerenderte HTML wurde dann zum Browser gesendet, der dann lediglich das Anzeigen des HTML übernahm. Mit dem zunehmenden Bedürfnis nach Interaktivität und der damit eingehenden Entwicklung von statischen Webseiten hin zu hochdynamischen Web-Anwendungen haben zunächst Flash und Javascript Add-Ons, bspw. auf Basis jQuery, diese Lücke gefüllt. Doch diese Technologien sind als Brückentechnologien zu betrachten.
Heute sind viele Web-Anwendungen technisch komplex. Hierzu wird oft ein Framwork wie ReactJS, Vue.js, EmberJS oder Angular als Grundlage verwendet. Diese Frameworks erlauben es Anwendungen wie Facebook und Google Docs zu bauen.
Die Komplexität dieser Frameworks steht dabei denen serverseitiger Frameworks (wie bspw. Rails, Django, Zend oder Symfony) kaum nach.
In diesem Seminar wollen wir anhand von ausgewählten Themen tiefer in die Clientseitige Webprogrammierung einsteigen, Frameworks und Konzepte kennenlernen und praktisch erproben.
Dazu wird in Gruppen eine Reihe von Themen aus der Praxis bearbeitet:
- MOOC Planner
- Interaktives Analytics Dashboard
- Datenvisualisierung für Code Traces
- openHPI Quiz Editor
- Web Application Onboarding
- 120/180
Voraussetzungen
Empfohlen:
- Abschluss der Vorlesung "Internet- und WWW-Technologien"
Hilfreich:
- Grundkenntnisse HTML, CSS und JavaScript
- Grundverständnis Webprogrammierung (HTTP, Sessions, Cookies, ...)
Literatur
Je nach Projekthema
Lern- und Lehrformen
1. Phase
- Anforderungsanalyse
- Beginn der Implementierung eines Prototyps
- Recherche eines Hintergrundthemas (z.B. Technologie, Verfahrensweise)
- Vortrag und Diskussion (45min) über Hintergrundthema, Stand der Entwicklung, Ziele
2. Phase
- Implementierung und Codedokumentation
- Zwischenvortrag (Lightning Talk): aktuellen Stands und Austausch mit anderen Gruppen
- Abschlussvortrag (Lightning Talk): Präsentation des Projektergebnisses
- Abgabe von Software und Dokumentation
Leistungserfassung
Folgende Leistungen gehen in die Bewertung der Arbeit ein:
- Eigenleistung in der Projektarbeit
- Ausarbeitung des Hintergrundthema
- Dokumentation
- Aktive Mitarbeit
- Vortrag und Diskussionsführung
Termine
- 24.04.2017: Vorstellung der Themen
- wöchentlich (nach Bedarf): Gruppeninterne Treffen mit Betreuern
- 22.05.2017: Hintergrundvorträge
- 29.05.2017: Hintergrundvorträge
- 19.06.2017: Zwischenpräsentation (Lightning Talks, max. 10 Min.)
- 18.07.2017: Abschlusspräsentation (Lightning Talks, max. 10 Min.)
- 28.07.2017: Abgabeschluss von Software und Entwickler-Dokumentation
Zurück