website/_posts/teaching/2020-04-15-IOS.md
2025-03-27 22:57:31 +01:00

51 lines
3.1 KiB
Markdown

---
layout: single
title: "iOS App Development"
categories: teaching
tags: teaching ios swift mobile-development app-development agile teamwork
excerpt: "Supervised iOS Praktikum: student teams built Swift apps using agile."
header:
teaser: /assets/images/teaching/ios.png
role: Practical Course Supervisor / Teaching Assistant
skills: iOS Development (Swift), Mobile Application Architecture, Client-Server Communication, Wireless Technologies (WiFi/Bluetooth), Location Services (GPS), Agile Methodologies, Team Project Supervision, Code Review
duration: Winter Semester 2019/20
---
![iOS Logo](/assets/images/teaching/ios.png){: .align-left style="padding:0.1em; width:5em" alt="Apple iOS Logo"}
Building upon my experience supervising the [Android development practical course](/teaching/android), I also co-supervised the **"iOS Praktikum"** at LMU Munich. This hands-on lab course focused on native mobile application development for the Apple iOS platform using the **Swift** programming language.
The course was structured in two main phases:
1. **Introductory Phase:** Covered foundational theoretical concepts of iOS development and Swift programming, complemented by practical exercises to solidify understanding.
2. **Project Phase:** Students formed small teams to conceptualize, design, develop, and test their own iOS application ideas. Throughout this phase, I provided regular **individual guidance and technical support** to the teams, assisting with architectural decisions, debugging, and project management.
A significant emphasis was placed not only on technical implementation but also on software engineering practices relevant to mobile development.
<div class="container" style="margin-top: 1.5em;">
<div class="sidebar" style="float: right; width: 30%; border: 0.5px grey solid; padding: 15px; margin-left: 15px; box-sizing: border-box;">
<h4 style="margin-top: 0;">Key Practical Topics</h4>
<ul style="list-style: none; padding-left: 0; margin-bottom: 0; font-size: smaller;">
<li>Swift Programming Fundamentals</li>
<li>iOS SDK and Core Frameworks (UIKit/SwiftUI)</li>
<li>Client-Server Architecture & Networking</li>
<li>Wireless Local Networks (WiFi / Bluetooth)</li>
<li>Location Services (GPS & Outdoor Positioning)</li>
<li>User Interface & Experience Design</li>
<li>Data Persistence</li>
<li>Agile Feature Development</li>
<li>Version Control (Git)</li>
</ul>
</div>
<div class="main-content" style="float: left; width: calc(70% - 15px); box-sizing: border-box;">
<h4 style="margin-top: 0;">Course Focus & Structure</h4>
The Praktikum aimed to provide comprehensive experience in:
<ul>
<li>Native iOS development using Swift.</li>
<li>Understanding specific concepts of mobile device programming (e.g., lifecycle, sensors, connectivity).</li>
<li>Planning and executing timed software projects as a team.</li>
<li>Applying agile development principles and utilizing associated tools.</li>
</ul>
Students progressed from guided exercises to independent team-based project realization.
</div>
<div style="clear: both;"></div>
</div>