iOS-Programmierung
iOS-Programmierung
Aktuelles
Ausgewählte App-Projekte sind nun online (ganz unten)
Materialien
Materialen zur Lehrveranstaltung finden Sie im passwortgeschützten Bereich
Dozent
Betreuer
Studiengang
Master-Studiengang Informatik
Leistungspunkte
7,5 LP (alte POs), 5 CP, ab Master PO von 2015
Lehrveranstaltungen
- Vorlesung: 2 SWS, Mi. 08:30 - 10:00 Uhr, Raum 25.12.01.51
- Übung/Projekt: 2 SWS Do. 14:30 - 16:00 Uhr, Raum 25.41.00.26
Inhalte
Objectve C, App basics, views, graphics, animation, input events, gestures, view controllers, concurrency, persistence, networking, CloudKit, SpriteKit, MapKit, WatchKit, (SWIFT)
Lernergebnisse/Kompetenzen
Studierende sollen nach Absolvierung der Lehrveranstaltungen in der Lage sein,
- die Programmiersprach Objective C und das Entwicklungswerkzeug Xcode anzuwenden
- Benutzerschnittstellen mit Cocoa Touch zu konzipieren
- Datenspeicherung mit CoreData und CloudKit anzuwenden
- grundlegende Netzwerkkommunikation selbst zu programmiere
- Anwendungen für die AppleWatch zu schreiben
- mit den erworbenen Kenntnissen das Software-Projekt zu konzipieren und zu realisieren
Empfohlene Literatur
- Neuburg, M., “Programming iOS 8”, O'Reilly, 2014
- iOS Dev Center
Verwendbarkeit des Moduls
Wahlpflichtmodul oder Schwerpunktmodul im Master-Studiengang Informatik (Praktisch/Technische Informatik)
Teilnahmevoraussetzungen
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:
- "Grundlagen der Softwareentwicklung und Programmierung" (Informatik I)
- "Grundlagen der Praktischen Informatik" (Informatik II)
- "Grundlagen der Algorithmen und Datenstrukturen" (Informatik III)
- "Grundlagen der Theoretischen Informatik" (Informatik IV)
Voraussetzungen für die Vergabe von Leistungspunkten
Software-Projekt (benotet)
Häufigkeit des Angebots, modulare Schiene
Alle 2 Jahre
Modulbeauftragter
Prof. Dr. Michael Schöttner
Themen
Objective C, View Controller, Views, Core Graphics & Animation, Input Events, Concurrency, Persistence, Networking, Core Data, SpriteKit, MapKit, CloudKit, WatchKit
Deployment von Apps auf iOS-Geräten
README, Geht ab Xcode 7 auch ohne kostenpflichte Lizenz.
Zeitplan für die App-Projekte
M1, 25./26.11.2015: Präsentation der App-Idee
M2, 4.12.2015: Projektplan (Entwurf, Stichpunkte 0.5-1 Seite)
M3, 18.12.2015: Projektplan (fertig, 2-3 Seiten mit Bildern)
M4, 10/11.2.2016: App-Präsentation (aktueller Stand)
M5, 13.3.2016: Abgabe der App (Quelltext) mit Dokumentation (8-10 Seiten)
Zeitaufwand: ca. 30h Vorlesung, ca. 120h App
https://coconucos.cs.uni-duesseldorf.de/%7Eschoettner/iOSprojectsWS12/
Ausgewählte iOS-Apps
TrafficNews 0211
Autor: Tobias KorfmacherEs war bisher nicht möglich lokale Verkehrsinformationen für die Stadt Düsseldorf (oder auch andere Städte) abzufragen. Hier kann man in der Regel jede halbe Stunde das Radio einschalten und diese Informationen bei Antenne Düsseldorf hören. Durch meine App "TrafficNews0211" ist es möglich, diese Informationen jeder Zeit, nun auch mobil - stets aktuell ,abzufragen. Hierdurch lässt sich Zeit sparen, wenn man eine sehr überfüllte Straße umfahren kann.
OptiCalc
Autor: Philipp SchulteOptiCalc is an ophthalmic calculator allowing for versatile calculations and conversions related to eye refraction or visual acuity. It supports most conventional notations.
In particular it provides functionality to: convert eye refraction to different spectacle planes providing magnification at the same time. In doing so you may choose different notations or representations of refraction, calculate visual acuity for different chart distances and converts visual acuity values to a variety of different notations, calculate wavefront refraction by entering elementary aberrations (second orders and higher order astigmatisms and spherical aberrations).
LineTip
Autor: Artur SchaeferDie App hilft Neurochirurgen während einer "Wachoperation" den Zustand des Patienten zu erfassen. Es werden nacheinander Linien unterschiedlicher Länge auf unterschiedlichen Bereichen des Displays dargestellt. Der Patient muss die Mitte der Linie selbstständig erfassen und diese berühren, um den Zustand seiner Wahrnehmungsfähigkeit an den operierenden Neurochirurgen zu übermitteln.
Ninja Fighter
Autor: Tobias CabanskiBei dem Spiel Ninja Fighter kämpfen Sie sich durch verzweigte Level, in denen Sie verschiedene Gegner erwarten. Es gibt einen Story- und einen Survivalmodus: Haben Sie die Story durchgespielt, können Sie sich an dem schwierigen Survivalmodus versuchen, in dem die Gegner in jeder Runde stärker werden und kein Level dem anderen gleicht.
JustDoIt - Habit-Tracking App
Autor: Maurice SchleussingerDie App hilft dem Nutzer bestimmte Ziele und Pflichten, deren regelmäßige Umsetzung aus bestimmten Gründen immer wieder fehlschlägt, besser zu erreichen. Möchte er z.B. seine Pflanzen regelmäßiger gießen, oder auch seine Familie häufiger besuchen, trägt er diese Ziele einfach ein und wird in definierbaren Zeitabständen daran erinnern, diese Ziele auch umzusetzen. Weiterhin wird er durch Gamification-Aspekte weiter motiviert, immer mehr Ziele zu erreichen und diese auch nicht zwischendurch zu vernachlässigen.
HERE
Autor: Moritz KanzlerHERE ist eine Social-Network App welche sich auf einen Personenkreis in einer Umgebung von 500m beschränkt. Auf einer Karte kann man angemeldete Benutzer verfolgen und mit diesen Interagieren (Freundschaftsanfragen schicken, Nachrichten austauschen, u.a.). Einmal befreundete Nutzer können auch über diesen Radius hinaus miteinander in Kontakt bleiben. Daneben soll HERE auch andere Aspekte des alltäglichen Lebens in direkter Umgebung simulieren. So werden beispielsweise eingetragen Geschäfte und Landenlokale angezeigt, mit denen man dann interagieren kann. Die App greift auf eine Serverstruktur zu und ist in Swift geschrieben. Sie wird momentan noch weiter entwickelt und soll Features wie Veranstaltungen und das automatische Einchecken in Orte über iBeacon realisieren.
Reiseplaner
Autor: Tobias KüperReiseplaner ist eine App mit der eine Gruppe ihren Urlaub planen kann, indem über die App mehrere Personen Zugriff haben. Es können mehrere Ziele über eine Karte hinzugefügt werden. Über diese Ziele können dann die einzelnen Mitglieder abstimmen, wohin es gehen soll. Darüberhinaus können mehrere Termin hinzugefügt werden, bei denen auch abgestimmt werden kann. Das Hinzufügen von Utensilien erleichtert das organisieren der Teile, die mitgebracht werden müssen bei einem Stadt, Strand oder auch Campingurlaub. Als letztes Feature hat die App noch einen Kategorie Kosten. Hier können die Kosten der Gruppe eingetragen werden. Sollte eine Person einen Betrag vorstrecken, kann dieser eingetragen werden und die Personen markiert werden, die an den Kosten beteiligt sind. So kann jede Person jederzeit die Gesamtkosten für den Urlaub sehen.
CubeFight
Autor: Alexander SchäferWürfel über Würfel! In dem „easy to learn - hard to master“ Strategiespiel „CubeFight!" können sich zwei Gegner ein intellektuelles Gefecht auf verschiedenen Spielfeldern liefern. Pro Zug kann ein Würfel um eine Augenzahl erhöht werden. Ist seine Augenzahl höher, als die Anzahl von Würfeln in seiner direkten Umgebung, so werden all diese Würfel vom Spieler übernommen und selbst wiederum um eine Augenzahl erhöht. Spannendes Strategiespiel, das sehr viel mehr Tiefe birgt, als auf den ersten Blick ersichtlich! Single- und Multiplayer-Modus vorhanden.
YUST
Autor: Tony ZerbesYUST ist eine App fu?r iOS Endgera?te, die den Benutzer bei seinen sportlichen Zielen unterstu?tzt. Das Hauptaugenmerk liegt hierbei vor allem auf drei Komponenten: Erstellung der Trainingspla?ne, die Terminplanung und das Begleiten der praktischen Trainingseinheit. Das Training ist dann eine Abfolge von Übungen, welches neben der klassischen Menüführung in der App auch mit einer gekoppelten Apple Watch bedient werden kann. Zur Motivation führt YUST ein Level System und der Benutzer erhält schwierigere Übungen nach Aufstieg eines Levels. Der aktuelle Fortschritt kann in der Profil-Ansicht verfolgt werden.