- ProgrammierspracheSwift für Ein- und Umsteiger
- iOS-EntwicklungiPhone/iPad Programmierung und Schnupperkurs
- Apple WatchEinführung in watchOS
- Mac AppsEinführung in die macOS-Entwicklung
- Fortgeschrittene ThemenDebugging, Multithreading, CoreData, Testen, ...
Ziel:
In diesem Training lernen Sie Softwareentwicklung mit der Programmiersprache Swift. Im Vergleich zum Kurs "Kurzeinführung in Swift" geht dieses Training in die Tiefe der Sprache und vermittelt ein umfassendes Wissen, um unmittelbar den Einstieg in Swift zu vollziehen. Sie lernen die Regeln, Konventionen und Design Patterns der Sprache kennen.
Zielgruppe:
Der Kurs richtet sich an Softwareentwickler, die Anwendungen für OS X und iOS erstellen möchten
Einstufung:
Fortgeschrittene
Voraussetzung:
Kenntnisse in objektorientierter Programmierung
Inhalt:
- Swift Playground
- Xcode Entwicklungsumgebung
- Einführung in die Xcode Entwicklungsumgebung, REPL
- Variablen, Funktionen, Typinferenz
- Strukturen, Enums, Tupel, Optionals, Closures
- Kontrollstrukturen
- Objekte und Klassen
- Objekte, Klassen, Attribute, Properties und Methoden, Vererbung
- Protokolle, Extensions
- Generics
- Operator-Überladung, eigene Operatoren
- Speicherverwaltung
- Fehlerbehandlung
Ziel:
In diesem Training lernen Sie, Anwendungen in der neuen Programmiersprache Swift zu schreiben. Sie lernen Konventionen und Design Patterns von Sprache und Framework kennen. Durch Vermittlung der Unterschiede zu anderen Programmiersprachen - speziell auch zu Objective‑C - können Sie Sprachfeatures richtig einschätzen und nutzen. Dieser Kurs ist Grundlage für den Kurs "iPhone/iPad Programmieren in Swift mit dem iOS SDK"
Zielgruppe:
Der Kurs richtet sich an Softwareentwickler, die Anwendungen für OS X und iOS erstellen möchten
Einstufung:
Einsteiger
Voraussetzung:
Kenntnisse in objektorientierter Programmierung (z.B. Smalltalk, C++, Java, C#, Objective‑C)
Inhalt:
- Swift Playground
- Xcode Entwicklungsumgebung
- Einführung in die Xcode Entwicklungsumgebung, REPL
- Variablen, Funktionen, Typinferenz
- Strukturen, Enums, Tupel, Optionals, Closures
- Kontrollstrukturen
- Objekte und Klassen
- Objekte, Klassen, Attribute, Properties und Methoden, Vererbung
- Protokolle, Extensions
- Generics
- Operator-Überladung
- Speicherverwaltung
Durchgeführt nach Wunsch für UIKit, SwiftUI oder beides
Ziel:
In diesem Seminar lernen Sie die Konzepte und Zusammenhänge des iOS SDK kennen. Sie erhalten einen Überblick über die unterschiedlichen Entwicklerprogramme, die Programmier-Umgebung und die Deployment-Szenarien
Zielgruppe:
Der Kurs richtet sich an Softwareentwickler und Entscheider, die einen kurzen Überblick über die Entwicklung von iPhone/iPad-Programmen erhalten möchten
Einstufung:
Einsteiger
Voraussetzung:
Allgemeine Programmierkenntnisse
Inhalt:
- Das iOS-Entwicklerprogramm
- Die Entwicklungsumgebung
- Ein erstes Programm
- Verteilung von iOS-Apps
Durchgeführt nach Wunsch für UIKit, SwiftUI oder beides
Die Kursdauer richtet sich nach Ihren Vorkenntnissen
Ziel:
In diesem Seminar lernen Sie die Konzepte und Zusammenhänge des iOS SDK kennen. Sie verwenden die Klassen des UIKit-Frameworks und passen sie an Ihre Anforderungen an. Praxisorientierte Beispiele und "Best Practices" vermitteln das nötige Handwerkszeug, um eigenständig Programme für iOS zu entwickeln.
Zielgruppe:
Der Kurs richtet sich an Softwareentwickler, die Anwendungen für iOS erstellen möchten
Einstufung:
Einsteiger
Voraussetzung:
Besuch des Kurses "Einführung in Swift" oder gleichwertige Kenntnisse
Inhalt:
- Übersicht: Entwicklung von iOS Apps mit UIKit/SwiftUI in Xcode
- Editieren und Debugging
- Interface Design
- Lebenszyklus einer Anwendung
- Programmarchitektur (Model-View-Controller)
- Actions und Targets, Outlets
- Einfache Steuerlemente
- Label, Textfield, Button, Slider, Segmented Control, Switch, Action Sheet, Alert View
- UIView
- Auto-Layout
- Multi-View-Anwendungen
- Tab Bars, Picker
- UITableView und UINavigationView
- Tabellencontroller
- Navigationscontroller
- Übergangsanimationen
- Storyboards
- Weiterführende Themen
- Responder Chain, Touches
- Delegate, Resource Bundles, Internationalisierung, Abspielen von Tönen
Ziel:
In diesem Training erlernen Sie die Entwicklung von iOS / MacOS Anwendungen mit dem SwiftUI Framework. Sie erstellen eigene Oberflächen und stellen Daten dar. Sie lernen ferner die grundlegenden Frameworks wie Combine kennen.
Zielgruppe:
Der Kurs richtet sich an Softwareentwickler, die Anwendungen mit Hilfe von SwiftUI entwickeln möchten
Einstufung:
Fortgeschrittene
Voraussetzung:
Kenntnisse in iOS/MacOS Entwicklung mit Swift und UIKit
Inhalt:
- SwiftUI
- Entwicklung von einfachen Oberflächen
- Bindings
- Übersicht grundlegender Features
- Result Builder
- Property Wrapper
Ziel:
In diesem Kurs lernen Sie, Apps für die Apple Watch zu entwickeln sowie bestehende Anwendungen um Apple Watch Funktionen zu ergänzen
Zielgruppe:
Der Kurs richtet sich an Softwareentwickler, die Anwendungen für die Apple Watch entwickeln möchten
Einstufung:
Einsteiger
Voraussetzung:
Kenntnisse in iOS-Entwicklung in SwiftUI
Inhalt:
- Das Programmiermodell in WatchKit
- Möglichkeiten und Einschränkungen
- "Hello Watch" - Ihr erstes Programm
- WatchKit Controls
- Einfache Controls
- Tabellen
- Layout
- Menüs
- Paging und Hierarchien
- Einstellungen
- Datentransfer zwischen Uhr und iPhone
- Glances
- Notifikationen
- Projektstruktur und Deployment
Ziel:
In diesem Training lernen Sie Anwendungen für macOS zu entwickeln, sowohl für Kommandozeile als auch mit GUI. Der Kurs beinhaltet Netzwerk- und Dateisystemzugriffe.
Zielgruppe:
Der Kurs richtet sich an Softwareentwickler, die Anwendungen für macOS erstellen möchten
Einstufung:
Einsteiger
Voraussetzung:
Besuch des Kurses "Einführung in Swift" oder gleichwertige Kenntnisse
Inhalt:
- Erstellen von Kommandozeilenanwendungen
- Erstellen von GUI-Anwendungen
- Dateisystem- und Netzwerkzugriff
Die Kursdauer richtet sich nach Ihren Vorkenntnissen und Wünschen
Ziel:
In diesem Kurs vertiefen Sie Ihr Wissen grundlegender Konzepte der Sprache Swift sowie diverser (low-level) Frameworks. Sie lernen die neuen Sprachmittel wie @resultBuilder kennen, halten Ihre Daten über SwiftUI und UIKit konsistent und programmieren nebenläufige Programme mit den unterschiedlichen APIs. Sie erlernen die neuen integrierten Testmöglichkeiten.
Zielgruppe:
Der Kurs richtet sich an iOS-Entwickler, die ihr Grundlagenwissen erweitern möchten
Einstufung:
Fortgeschrittene
Voraussetzung:
Kenntnisse in der iOS-Entwicklung, z.B. die Inhalte des Seminars "iPhone/iPad App-Programmierung" oder gleichwertige Kenntnisse
Inhalt:
- Swift-Sprachfeatures
@propertyWrapper
@resultBuilder
async/await
some/any
- Views
- Anpassung von Tabellenzellen
- Benutzerdefinierte Übergänge und Gesten
- NibLoading-Mechanismus
- Integration SwiftUI / UIKit
- Gemeinsamer Code auf iPhone und iPad
- Windows, Scenes und
NSUserActivity
- Datenmodell
- Bindings
- SwiftUI/UIKit-Datentransfer
- Dokumenten-Apps
- Multi-Threading-Programmierung
- Überblick über verschiedene Multithreading-APIs
- Posix-Threads,
NSThread
,NSOperation
,NSRunLoop
- Synchronisation, Locking und Barrieren
- Posix-Threads,
- Grand Central Dispatch (GCD) im Detail
- Sichere Multi-Thread-Programmierung mit GCD
- Parallele Schleifen
- Synchronisation von Queues
- Combine-Framework
- Überblick über verschiedene Multithreading-APIs
- Testen von iOS-Anwendungen
- Unittests
- UI-Automatisierung
Die Kursdauer richtet sich nach Ihren Vorkenntnissen und Wünschen
Ziel:
Dieser Kurs vermittelt Ihnen Grundkenntnisse des OSLog Frameworks und bietet einen Einstieg in das Debugging mit dem LLDB. Sie lernen, Log-Einträge, Aktivitäten und Signposts zu verwenden, um den Programmfluss Ihrer Anwendung zu protokollieren. Es werden weiterhin eigene Logging-Mechanismen betrachtet. Beim Debuggen verlassen Sie die Xcode UI-Welt und lernen die Kommandozeile des LLDB kenne, um effektiv Breakpoints zu setzen, Speicherzugriffe zu überwachen und zu analysieren sowie den LLDB zu scripten.
Zielgruppe:
Der Kurs richtet sich an iOS-Entwickler, die Apple Standardmechanismen zum Logging und Debugging kennenlernen und erweitern möchten
Einstufung:
Fortgeschrittene
Voraussetzung:
Kenntnisse in der Bedienung von Xcode
Inhalt:
- Logging
- Das
OSLog
Framework - Konsole-App und Kommandozeile
- Log-Level
- Datenschutzaspekte
- Signposts
- Aktivitäten
- Instruments
- Eigene Logs und externe Anbieter
- Das
- Debugging
- Die LLDB-Kommandozeile
- Breakpoints
- Watchpoints
- Frames, Variablen und Register
- Makros und Scripting
Ziel:
In diesem Kurs lernen Sie, wie Sie Ihre Anwendungsdaten mit Hilfe des Core Data Frameworks speichern und effizient auslesen können.
Zielgruppe:
Der Kurs richtet sich an Softwareentwickler, die Anwendungsdaten unter macOS und iOS mit Hilfe von Core Data speichern möchten
Einstufung:
Fortgeschrittene
Voraussetzung:
Kenntnisse in Swift, Cocoa (-Touch)
Inhalt:
- Der Core Data Stack
- Erzeugung von Datenmodellen mit Entitäten, Attributen und Beziehungen
- CRUD-Operationen
- Suche und Prefetching von Daten
- Initialisierung von Daten
- NSManagedObject
- Persistierung eigener Klassen
- Core Data als Datenquelle für Tabellen
- Fortgeschrittene Core Data Themen
- Undo/Redo
- Versionierung und Migrationsstrategien
- Datenvalidierung, Konfliktlösung und Multithreading
- BLOBs und andere nicht-standardkonforme Attribute
- Tool-Unterstützung (Debugging, Performance-Analyse)
Ziel:
In diesem Kurs lernen Sie Ihre Anwendungen zu internationalisieren (I18N), um sie lokalisierbar zu machen
Zielgruppe:
Der Kurs richtet sich an Softwareentwickler, die internationale Anwendungen unter iOS und macOS erstellen
Einstufung:
Fortgeschrittene
Voraussetzung:
Kenntnisse in Swift und Cocoa (-Touch) Wünschenswert sind Kenntnisse im Autolayouting
Inhalt:
- Grundlagen und Voraussetzungen
- Vorkehrungen in der UI, Autolayouting
- Internationalisierung von
- Texten
- Zahlen, Daten
- XIB, Storyboard
- Ressourcen
- Tools