Header image Dekoration
Schulungen Das aktuelle Trainingsprogramm
Icon: Programmiersprachen Swift und Objective-C
Programmiersprachen Swift und Objective‑C
Kurzeinführung in Swift und Cocoa (1 Tag)

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
Swift für Umsteiger von Objective‑C (3 Tage)

Ziel:

In diesem Training lernen Sie den Umstieg von Objective‑C zu Swift. Im Vergleich zum Kurs "Kurzeinführung in Swift und Cocoa" geht dieses Training in die Tiefe der Sprache und vermittelt ein umfassendes Wissen, um unmittelbar den Umstieg nach Swift zu vollziehen. Sie lernen die Regeln, Konventionen und Design Patterns der Sprache kennen. Durch Vermittlung der Unterschiede zu Objective‑C können Sie Sprachfeatures richtig einschätzen und nutzen. Sie können bestehende Projekte durch Swift-Programmteile ergänzen und so einen schrittweisen, nahtlosen Übergang vollziehen

Zielgruppe:

Der Kurs richtet sich an Softwareentwickler, die Anwendungen für OS X und iOS erstellen möchten

Einstufung:

Fortgeschrittene

Voraussetzung:

Kenntnisse in Objective‑C und Cocoa (Touch)

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
  • Interoperabilität mit Objective‑C
    • Bidirektionale Interoperabilität mit Objective‑C
    • Die Cocoa/Cocoa-Touch API
Kurzeinführung in Objective‑C und Cocoa (1 Tag)

Ziel:

Dieser Kurs bietet eine kompakte Einführung in Objective‑C und das Cocoa Framework. Die Teilnehmer erlernen die Sprache unter Verwendung der Entwicklungsumgebung XCode und erhalten anhand von Beispielen die Basistechniken für die Entwicklung graphischer Benutzeroberflächen.

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#)

Inhalt:

  • Einführung in die Xcode Entwicklungsumgebung
  • Objective‑C Grundlagen
    • Objekte, Klassen, Attribute und Methoden, Vererbung, Properties
    • Nachrichten und Selektoren
    • Kategorien und Protokolle
    • Laufzeitsystem
  • Foundation Klassen
    • u.A. NSString, NSArray, NSDictionary
  • Weiterführende Konzepte
    • Blöcke
    • Speichermanagement
    • Archivierung
    • Ausnahmebehandlung
    • Entwurfsmuster
Icon: iOS-Programmierung
iOS-Entwicklung
Schnupperkurs - iPhone/iPad für Einsteiger (1 Tag)

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
iPhone/iPad App-Programmierung (3-4 Tage)

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 und Cocoa" oder gleichwertige Kenntnisse

Inhalt:

  • Übersicht: Entwicklung von iOS Apps mit CocoaTouch in Xcode
    • Editieren und Debugging
    • Interface Design
    • Instruments
    • 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
Icon: watchOS-Programmierung
Apple Watch
Einführung in die watchOS-Entwicklung (1 Tag)

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 (Swift oder Objective‑C)

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
Icon: macOS-Programmierung
Mac Apps
Einführung in die macOS-Entwicklung (1 Tag)

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 und Cocoa" oder gleichwertige Kenntnisse

Inhalt:

  • Erstellen von Kommandozeilenanwendungen
  • Erstellen von GUI-Anwendungen
  • Dateisystem- und Netzwerkzugriff
Fortgeschrittene Swift/Objective-C-Programmierung
Fortgeschrittene Themen
Multithreading, iCloud-Entwicklung, Testen, ... (2-5 Tage)

Ziel:

In diesem Kurs vertiefen Sie Ihr Wissen grundlegender Konzepte des Cocoa Touch Frameworks. Sie lernen, eigene Views zu erzeugen (Core Animation Layer), Übergänge zu programmieren und eigene Gesten zu erkennen. Sie programmieren nebenläufige Programme mit den unterschiedlichen APIs und 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:

  • Universal Apps
    • Gemeinsamer Code auf iPhone und iPad
  • Views und Storyboards
    • Grundlagen
    • Anpassung von Tabellen
    • Benutzerdefinierte Übergänge
    • Zeichnen eigener Views mit Core Animation
    • Erkennung eigener Gesten
  • Universal Apps
    • Gemeinsamer Code auf iPhone und iPad
  • Multi-Threading-Programmierung
    • Überblick über verschiedene Multithreading-APIs
      • Posix-Threads, NSThreads, NSOperation, NSRunLoop
      • Synchronisation, Locking und Barrieren
    • Grand Central Dispatch (GCD) im Detail
      • Sichere Multi-Thread-Programmierung mit GCD
      • Parallele Schleifen
      • Synchronisation von Queues
  • iCloud Programmierung
    • Verwalten von Benutzereinstellungen
    • Speichern und Laden von Dokumenten
    • Behandlung von Versionskonflikten
    • Best Practices
  • Testen von iOS-Anwendungen
    • Unittests
    • UI-Automatisierung
    • Kontinuierliche Integration mit OS X Server.App
Core Data (1 Tag)

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 oder Objective‑C, 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)
Auto-Layouting (1 Tag)

Ziel:

In diesem Kurs lernen Sie die Features von Autolayouting in XCode zu nutzen

Zielgruppe:

Der Kurs richtet sich an Softwareentwickler, die Anwendungen unter iOS und macOS erstellen

Einstufung:

Anfänger

Voraussetzung:

Kenntnisse in Swift oder Objective‑C, Cocoa (-Touch)

Inhalt:

  • Größenklassen
  • Layouting in Xcode und im Code
  • Fortgeschrittenes Layouting
    • Animation
    • Prioritäten und Gewichte
    • Konfliktlösungen
  • Tools
Internationalisierung (1 Tag)

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 oder Objective‑C, 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
Enterprise iOS Deployment (1 Tag)

Ziel:

Sie lernen mit Hilfe des Apple Enterprise Developer Programm in-House-Anwendungen für Ihr Unternehmen zu entwicklen und zu verteilen

Zielgruppe:

Der Kurs richtet sich an Softwareentwickler und Entscheider, die in-House-Anwendungen für iOS erstellen und verteilen möchten

Einstufung:

Einsteiger

Voraussetzung:

Keine

Inhalt:

  • Vorstellung des Enterprise Developer Programms
    • Voraussetzungen
    • Fristen
  • Zertifikate und Profile
    • Zusammenhang zwischen Zertifikaten, Profilen und Entitlements
    • Unterschiedliche Provisionierungsmöglichkeiten
    • Aktualisierung von Zertifikaten und Profilen
  • Verteilen von in-House-Apps
    • MDM
    • Automatisierte Verteilung (ohne MDM)