Description
New programming language created by Apple, Swift presents itself as a modern and more efficient alternative to Objective-C. In this training, you will learn how to develop Swift 3 in a MacOS environment. You will discover the basic concepts of Swift 2 and its innovative aspects.
Who is this training for ?
For whom ?
Developers, project managers.
Prerequisites
Training objectives
Training program
- Introduction to Swift
- - Why a new programming language in the Apple universe? The different use cases of Swift (Mac OS X, iOS).
- - The contributions and new features of Swift .
- - Swift's relationship with classic Apple tools: Objective-C, XCode.
- - Openness to Open Source and other systems.
- The development environment
- - Discovery of the XCode environment, new features of XCode 8, migrating from Swift 1 and 2 (Swift Migrator).
- - Installation and configuration of the development environment, targeting a specific OS version.
- - Creation of a Swift project and basic operations (editing, execution.
- - ).
- - Discovery of the Swift project 'REPL evaluation and development (Read-Eval-Print-Loop).
- - Practical work Setting up the development environment and discovery of a first project.
- Basic concepts of Swift
- - Philosophy of language: syntax, memory management, type inference, object or functional orientation.
- - Classic mechanisms: typing, variables and constants, instructions, functions.
- - Object concepts: concept of classes, method.
- - The manipulation of character strings.
- - Practical work Creation of several applications implementing the concepts presented.
- Swift Standard Library
- - Types: String, Array, Dictionary and numeric.
- - Protocols: Equatable, Comparable, Printable.
- - Free functions and algorithms.
- - Practical work Implementation of concepts.
- Innovative and advanced aspects
- - Swift's typing mechanisms, genericity, protocol support.
- - The concept of a playground (Interactive Playground).
- - Closures ).
- - Memory management: constructor, destructor, reference management, lazy instantiation.
- - Error management.
- - Multi-threading.
- - Introduction to graphical interfaces with Swift (Cocoa, Cocoa Touch, iOS) The future with Swift 3.
- - Practical work Discovery of the Playground.
- - Putting closures and genericity into practice.
- - Using the Cocoa and Cocoa Touch frameworks.
- Innovative and advanced aspects
- - Swift's typing mechanisms, genericity, protocol support.
- - The concept of a playground (Interactive Playground).
- - Closures ).
- - Memory management: constructor, destructor, reference management, lazy instantiation.
- - Error management.
- - Multi-threading.
- - Introduction to graphical interfaces with Swift (Cocoa, Cocoa Touch, iOS) The future with Swift 3.
- - Practical work Discovery of the Playground.
- - Putting closures and genericity into practice.
- - Using the Cocoa and Cocoa Touch frameworks.
- Integration with Cocoa and Objective-C
- - Using the Cocoa and Cocoa Touch frameworks from a Swift application.
- - The joint use of Swift and Objective-C.
- - The three operating modes : Interoperability, Mix and Match, Migration.
- - Practical work Integration of Swift and Objective-C code.