Allgemeine Informationen

Für den Blockkurs im Rahmen der Studierendentage 2017 bitte in der Übungsgruppenverwaltung anmelden!

Die Vorlesung Softwareentwicklung für iOS gibt eine Einführung in die moderne Programmentwicklung mit einer Integrierten Entwicklungsumgebung (IDE), die objektorientierte Programmiersprache Swift und die Programmierung von Benutzeroberflächen am Beispiel der iOS Plattform.

Im Rahmen der Programmierung von Apps für iOS Geräte werden wichtige und allgemeingültige Konzepte der Programmstrukturierung behandelt.

Diese Vorlesung kann alleine oder zusätzlich zu einem Programmierkurs gehört werden. Der Kurs findet wöchentlich während des Semesters im Medienzentrum des URZ statt. Zur Programmierung ist ein Mac erforderlich. Es stehen einige Macs im URZ zur Verfügung.

Organisation

Details zum Kurs (SS 2016)

Diese Vorlesung ist für alle geeignet, die nicht nur eine Programmiersprache, sondern auch eine moderne Vorgehensweise bei der Programmierung lernen wollen. Die iOS Plattform bietet sich hier als spannende und vielseitige Möglichkeit an, eigene Programme zu entwickeln.

Wir lernen anhand einiger kleinerer bis komplexer Apps zunächst die moderne, objektorientierte Programmiersprache Swift und im Verlauf des Kurses viele wichtige und allgemeingültige Konzepte der Programmstrukturierung kennen. Swift wurde erst im Juni 2014 als neue Programmiersprache für die iOS Plattform veröffentlicht und ist bereits die beliebteste Programmiersprache auf GitHub, seitdem sie im Dezember 2015 open-sourced wurde. Sie ersetzt damit die auf C basierende Sprache Objective-C als Programmiersprache dieser Vorlesung, da Swift viele Konzepte moderner Programmiersprachen aufgreift und sich das Gelernte so ohne Probleme auf andere Programmiersprachen wie C++, C# oder Python, andere Programmierumgebungen und andere Zielsysteme übertragen lässt.

Wir beginnen mit der Verwendung der modernen Programmierumgebung Xcode und einer Einführung in die Grundlagen der objektorientierten Programmierung und sind schnell in der Lage, unsere erste iPhone App auf dem Simulator und auf eigenen iOS Geräten laufen zu lassen. Anschließend lernen wir Möglichkeiten kennen, unsere Apps strukturiert aufzubauen und unseren Code systematisch zu verwalten.

Im Unterschied zu Skripten in Sprachen wie Python oder Ruby werden Programme im Allgemeinen nicht einfach gestartet und dann abgearbeitet, sondern durch Benutzereingaben wie Touchscreen-Gesten oder gerätspezifische Events gesteuert. Um Programme zu entwickeln, die die Möglichkeiten der jeweiligen Plattform nutzen können, machen wir uns mit den APIs (Application Programming Interfaces) der iOS Plattform vertraut und lernen, auf verschiedene Funktionen der iOS Geräte zuzugreifen.

Am Ende der Veranstaltung sollte jeder Teilnehmer in der Lage sein, sich leicht in andere Entwicklungsumgebungen und andere Programmiersprachen wie C++, C# oder Python einzuarbeiten, sowie einfache Apps für iOS Geräte und Macs zu schreiben.

Themen

Übungen

Wöchentlich wird es zunächst eine Vorlesungseinheit über ein neues Thema geben und zugehörige Übungsaufgaben verteilt. Zu Beginn der folgenden Vorlesung werden deren Lösungen besprochen und vorzugsweise von einem Kursteilnehmer vorgestellt.

Um langfristig mitzukommen ist es am Wichtigsten, die wöchentlichen Übungen selbst zu bearbeiten und nicht nur zuzuhören und Code von anderen zu kopieren. Die Kursthemen bauen sehr stark aufeinander auf. Für die regelmäßige Anwesenheit in der Vorlesung und Mitarbeit in den Übungen werden 2 CP vergeben. Es wird keine Klausur oder Note geben.

Weitere Programmierkurse in der Physik

Diese Vorlesung wird von der Fakultät für Physik und Astronomie angeboten, ist jedoch nicht auf Studierende der Physik beschränkt. Sie steht, ohne Anspruch auf Vollständigkeit, im Zusammenhang mit weiteren Programmierkursen in der Physik: