See how Insoft Services is responding to COVID-19

Professional Swift

X

Kontaktiere uns

Wir würden uns freuen, von Ihnen zu hören. Bitte füllen Sie dieses Formular aus, um vorab zu buchen oder um weitere Informationen zu unseren Angebotsmöglichkeiten anzufordern.

Abonnieren

Ich möchte E-Mails mit den neuesten Informationen und Werbeaktionen von Insoft erhalten.

Datenschutz & Privatsphäre

Hiermit erlaube ich Insoft Ltd., mich zu diesem Thema zu kontaktieren. Des Weiteren ermächtige ich Insoft Ltd., meine personenbezogenen Daten für die Zwecke dieser Aktivitäten zu sammeln und zu speichern. Alle Ihre Daten werden gemäβ unserer Datenschutzrichtlinie geschützt und gesichert.


Schulungsplan


Oct 19 - Oct 21, 2020
09:00 - 17:00 (CEST)
Online

Dec 7 - Dec 9, 2020
09:00 - 17:00 (CEST)
Online

Professional Swift
3 days  (Instructor Led Online)  |  Mobile Development

Course Details

Kursbeschreibung

The Professional Swift course takes you into the world of Swift – an open-source multi-paradigm language that has a clean syntax is easy to maintain and encourages interactive coding. You will start by learning the concepts of value types, JSON encoding and decoding, and the software architecture of Swift and frameworks. You will then learn about protocols, generics, and how to transition to protocol-oriented programming. You will also learn and evaluate the iOS architectural patterns in detail. By the end of this course, you will confidently create applications by using Swift features.

Speed and easy maintenance are key factors that affect the performance and popularity of applications. This course teaches you how to use the features of Swift to create superlative applications.

 

See other courses available

Kursziele

We begin the course by learning about value types (structs and enums), and when they are preferable over classes. We also learn about the copy-on-write technique and how to implement it ourselves. Then we learn how to load JSON from web APIs into our custom types, and how to export that content out again. Finally, we learn how to create frameworks, and import other frameworks using CocoaPods or Carthage.

We move on to learn advanced uses of Swift protocols and how protocol-oriented development improves efficiency and leads to more maintainable and reusable code. Then we learn about generics, and how they enable us to support multiple types without duplication. Later in the course, we discover different ways to structure a complete iOS app from scratch. We begin the discussion with the well-known MVC pattern and cover every other trending architecture in the iOS world.

After completing this course, you will be able to:

  • Load content from web APIs into structs
  • Use methods to store structs to files
  • Implement the copy-on-write technique
  • Describe protocols and protocol-oriented programming in depth
  • Write code with less duplication using generics
  • Evaluate different architectural patterns for iOS apps
  • Create an iOS app using Redux.

Kursinhalt

LESSON 1: VALUE TYPES

  • Reference versus Value Types
  • Structs
  • Enums

LESSON 2: ENCODING AND DECODING

  • JSON Decoding
  • JSON Encoding

LESSON 3: SWIFT FRAMEWORKS

  • Creating a framework
  • CocoaPods
  • Carthage

LESSON 4: SWIFT PROTOCOLS

  • Protocol Syntax Basics
  • Using Protocols as Types
  • Mutating Method Requirements

LESSON 5: TRANSITIONING TO PROTOCOL-ORIENTED PROGRAMMING

  • Comparing Object-Oriented and Protocol-Oriented Programming
  • Implement Employee as a Simple Swift Struct
  • Refactoring Employee with an Object-Oriented Approach
  • Refactoring Employee with a Protocol-Oriented Approach

LESSON 6: GENERICS

  • Basics of Generics
  • Creating Generic Types
  • Generic Extensions
  • Associated Types

LESSON 7: SOFTWARE DESIGN

  • The Need for Architectural Patterns
  • The Original MVC Report
  • Apple’s MVC

LESSON 8: MVC ALTERNATIVES

  • Apple’s MVC in Practice
  • MVVM (Model-View-ViewModel)
  • VIPER

LESSON 9: UNIDIRECTIONAL DATA FLOW

  • Identifying Side Effects of Functions
  • Unidirectional Data Flow
  • Redux in iOS

Zielgruppe

This is an ideal course for you if you want to improve your Swift skills and move into the professional app development world. You will benefit the most from this course if you already know the following concepts of Swift:

  • Basic syntax
  • Optionals
  • Functions and closures
  • Classes

Voraussetzungen

It is assumed that you are familiar with Xcode. Any additional iOS application development experience, either using Swift or Objective-C, will be an advantage for you.

 

Hardware:

  • For an optimal experience with the hands-on labs and other practical activities, we recommend the following hardware configuration:

A Mac computer capable of running macOS Sierra 10.12, such as:

  • MacBook (Late 2009 or newer)
  • MacBook Pro (Mid 2010 or newer)
  • MacBook Air (Late 2010 or newer)
  • Mac mini (Mid 2010 or newer)
  • iMac (Late 2009 or newer)
  • Mac Pro (Mid 2010 or newer)

Software:

  • Operating system: macOS Sierra 10.12.6+
  • Xcode 9
  • Safari browser