Inhalt
In diesem Modul werden die Grundlagen des Mobile Development vermittelt. Am Anfang gibt es einen kurzen Überblick über die Development-Landschaft im Mobile-Bereich. Danach tauchen wir in die native iOS-Entwicklung mit Swift und UIKit ein.
Es gibt keine Endprüfung, sondern Programmieraufgaben (Einzelarbeit). Diese sind unterteilt nach VO/UE in Fixed Exercises und Freeform Exercises.
Fixed exercises sind recht strikt im Umfang und Aufgaben. Sie sind fast wie interaktive Tutorials, nur ohne Lösung. Das Ziel dieser Aufgaben ist, die wichtigsten Aspekte der iOS-Entwicklung zu lernen, die jeder kennen sollte.
Bei den freeform exercises hat man dagegen mehr Freiheit. Man kann selbst aussuchen, an welchen Themen man arbeiten möchte und welche Features man implementieren möchte. Genaueres dazu siehe unten auf der LV-Homepage.
Überblick der Themen:
- Mobile Development Übersicht
- Web-App vs Cross-Plattform vs Native mobile
- Swift Grundlagen
- Native iOS Entwicklung Grundlagen
- UIKit & Auto Layout Grundlagen
- Networking
- Persistence (Mobile Databases)
Genauere Informationen zu den Themen gibt es auch auf der LV-Homepage.
avf.github.io/mobile-app-dev
Für die Teilnahme wird der Besitz eines Mac mit macOS 10.15.4 oder höher stark empfohlen. Alternativ kann auch eine Cloud-VM zur Verfügung gestellt werden, aber die Arbeit in einer nativen Umgebung ist deutlich angenehmer. Ein iOS-Mobilgerät (iPhone/iPad) ist von Vorteil, aber nicht erforderlich.
Lernergebnisse
Nach Abschluss der Lehrveranstaltung analysieren und gestalten die Studierenden Entwicklungsstrategien für mobile Anwendungen in komplexen Kontexten unter Berücksichtigung von Plattformrichtlinien, Performance, Sicherheit und Datenschutz.
Nach Abschluss der Lehrveranstaltung entwickeln und steuern die Studierenden automatisierte Teststrategien für mobile Anwendungen einschließlich Pipeline-Integration ausgerichtet an nachvollziehbaren Qualitätskriterien und betrieblichen Anforderungen.
Nach Abschluss der Lehrveranstaltung bewerten die Studierenden Architekturoptionen für mobile Systeme und treffen strategische Umsetzungsentscheidungen in verteilten Produktumgebungen unter Beachtung von Skalierbarkeit, Wartbarkeit und Compliance.
Nach Abschluss der Lehrveranstaltung optimieren und steuern die Studierenden die Laufzeit- und Speicherleistung sowie die reaktive Datenflussverarbeitung von iOS-Apps in komplexen Szenarien unter Nutzung fortgeschrittener Plattformwerkzeuge und unter Einhaltung von Qualitäts-, Sicherheits- und Datenschutzvorgaben.
Lehrmethode
Vortrag, Live-Programmieren, Fall-Studien, Programmieraufgaben
Prüfungsmethode
Immanente Leistungsüberprüfung: Endprüfung, Gruppenarbeiten
Literatur
Siehe Literaturverzeichnis auf der LV-Homepage:
avf.github.io/mobile-app-dev/lectures/
Unterrichtssprache
Englisch