Web Development

Vertiefungsmodul im Medieninformatik Bachelor

Frontend Development

Prof. Christian Noss & Volker Schaefer

In diesem Kurs geht es, wer hätte es gedacht, um das Thema Frontend Development im Kontext von web-basierten Anwendungen. Wir befassen uns mit den Basistechnolonolgien HTML, CSS und Javascript und werden sehr viele praktische Übungen und Aufgaben bearbeiten und lösen. Wir orientieren uns dabei an der Frontend Developer Roadmap von Kamran Ahmed.

Inhalte & Voraussetzungen

HTML

Da HTML das strukturelle Gerüst und somit die absolute Grundlage einer Webseite darstellt, setzen wir uns in Frontend Development damit auseinander, wie Content mit sinnvollem, effizienten, semantischen Markup abgebildet und zu strukturiert werden kann.

CSS

Zur Einflussnahme auf die Darstellung im Browser befassen wir uns mit den wesentlichen Konzepten und Eigenschaften von Cascading Stylesheets: Selektoren, Eigenschaften, Vererbung, Floats, Positioning, Display, Box Model, Grid und Flexbox. Darüber hinaus schauen wir uns Preprozessoren (SCSS o.Ä.) und CSS Methodologien (BEM, OOCSS) aber auch Strukturierungskonzepte wie Atomic Design und Design Systems an.

Javascript

Zur Abbildung von Anwendungslogik und Interaktion im Browser wird Javascript benutzt. Im Rahmen des Teilmoduls befassen wir uns mit grundlegenden Elementen, wie Variablen, Schleifen oder Funktionen, aber auch die Prototype Chain, das this Keyword und Muster, wie Closures, DOM API und Eventlistener werden adressiert. Abschließend schauen wir uns Vue.js als Frontend Framework und Eleventy als Static Page Generator an.

Development Tools

Darüber hinaus behandeln wir den Umgang mit Entwicklungstools wie der Developer Konsole im Browser, Taskrunnern (NPM Script, ESLint), IDE/ Editor, Package Managers (Yarn, NPM) als auch mit Containervirtualisierung via Docker.

Voraussetzungen

Für das Modul setzen wir voraus, dass Sie die Konzepte, Technologien & Inhalte aus folgenden Modulen beherrschen:

Prüfung

Die Prüfung findet in Form eine Coding Challenge statt. Wir stellen am Prüfungstag Startercode via GitHub Classroom zur Verfügung und werden einige Aufgaben formulieren, die im Rahmen der etwa 4-stündigen Challenge zu realsieren sind.

Termine

Einfache Inhalte mit sinnvollem Markup strukturieren

Termin
18. April 2024, 10:00 Uhr
Dauer
420 min
Verantwortlich
Christian Noss

HTML Seiten mit CSS gestalten

Termin
19. April 2024, 10:00 Uhr
Dauer
420 min
Verantwortlich
Christian Noss

Layouts mit CSS erstellen

Termin
25. April 2024, 10:00 Uhr
Dauer
420 min
Verantwortlich
Christian Noss

Interaktive Elemente mit JavaScript implementieren

Termin
26. April 2024, 10:00 Uhr
Dauer
420 min
Verantwortlich
Volker Schaefer

Hackday – Mengenrechner, zweistufiges Formular & Slideshow

Termin
02. Mai 2024, 10:00 Uhr
Dauer
420 min
Verantwortlich
Christian Noss

Hackday – Mobile Nutzbarkeit & Verwandte Rezepte anzeigen

Termin
03. Mai 2024, 10:00 Uhr
Dauer
420 min
Verantwortlich
Christian Noss

Hackday – Feature Request mobile Nutzbarkeit

Termin
08. Mai 2024, 10:00 Uhr
Dauer
420 min
Verantwortlich
Christian Noss

Hackday – Zugänglichkeit, SEO & ähnliche Rezepte via API

Termin
10. Mai 2024, 10:00 Uhr
Dauer
420 min
Verantwortlich
Christian Noss

Prüfungstraining

Termin
30. Juni 2023, 10:00 Uhr
Dauer
300 min
Verantwortlich
Christian Noss

Serverseitig generierter Code

Termin
06. Juli 2023, 10:00 Uhr
Dauer
360 min
Verantwortlich
Christian Noss

Clientseitig generierte Code via Vue.js

Termin
07. Juli 2023, 10:00 Uhr
Dauer
300 min
Verantwortlich
Christian Noss

Thema folgt

Dauer
420 min
Verantwortlich
Christian Noss

Prüfung // Coding Challenge

Termin
21. September 2023, 10:00 Uhr
Dauer
240 min
Verantwortlich
Christian Noss

Support

Termin
01. September 2022, 11:00 Uhr
Dauer
120 min
Verantwortlich
Christian Noss

Support Coding Challenge Startercode

Termin
20. September 2023, 17:00 Uhr
Dauer
90 min
Verantwortlich
Christian Noss

Frontend Development Tutorium

Termin
07. Juni 2023, 15:00 Uhr // 14. Juni 2023, 15:00 Uhr // 21. Juni 2023, 15:00 Uhr // 28. Juni 2023, 15:00 Uhr // 05. Juli 2023, 15:00 Uhr // 07. September 2023, 15:00 Uhr
Dauer
120 min
Verantwortlich
Calvin Hinzer

Ressourcen