Swift Development 101 Yellow Belt - Introduction course, 3 days

Course

In London

£ 797 + VAT

Description

  • Type

    Course

  • Location

    London

  • Class hours

    18h

  • Duration

    3 Days

  • Start date

    Different dates available

First Class Training for Creatives and Developers

Swift is Apple’s replacement for the Objective C language, that seeks to simplify the process of coding and modernise the language used for creating iOS and OS X apps.

Facilities

Location

Start date

London
See map
Elizabeth House 39 York Road, SE1 7NQ

Start date

Different dates availableEnrolment now open

About this course

Swift is Apple’s replacement for the Objective C language, that seeks to simplify the process of coding and modernise the language used for creating iOS and OS X apps. Swift manages to combine the power of an object orientated programming language – using controlled data-types and high level patterns of development – with the simplicity and ease of use of a scripting language. Cherry-picking many of the best concepts from other modern languages, Swift seeks to fix many inconstancies and dangers found in traditional coding, and offer the opportunity for developers to create new source code that is highly reduced from older Objective C patterns. Code written in Swift is easier to maintain, and allows more scope to experiment with the new Playgrounds feature found in Xcode. This course assumes basic knowledge of coding, and will be making references to the iOS APIs when demonstrating how to implement swift. This course is ideal for anyone who wants to have a thorough walkthrough of the language in more detail than on the standard iOS course, and is perfectly suited to anyone who has studies iOS/OSX development, and wants to cross over from Objective C into Swift.

This course is ideal for anyone who wants to have a thorough walkthrough of the language in more detail than on the standard iOS course, and is perfectly suited to anyone who has studies iOS/OSX development, and wants to cross over from Objective C into Swift.

This course assumes basic knowledge of coding, and will be making references to the iOS APIs when demonstrating how to implement swift.

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

This centre's achievements

2016

All courses are up to date

The average rating is higher than 3.7

More than 50 reviews in the last 12 months

This centre has featured on Emagister for 16 years

Subjects

  • C
  • Inheritance
  • IT Development
  • Yellow Belt
  • Swift
  • Swift Code
  • Data Patterns
  • Control Flow
  • Patterns
  • Apple APIs
  • IOS
  • Xcode

Teachers and trainers (1)

Chakib   Labidi

Chakib Labidi

trainer

I am a User-Centered & UX design consultant and facilitator from London. My job is to help companies to create products with a great user experience. With more than 15 years of experience in the creative industry, I had the opportunity to work with a wide range of clients including Sony, Sky, Virgin and Barclays, News UK just to name a few. Customer satisfaction and a desire to create quality products that people want, has been of interest to me, even before I started my masters degree in product design at the University of the Arts in Berlin.

Course programme

Introducing Swift

  • Origins of Swift
  • Why abandon Objective C and C
  • Grammatical/lexical base for the language
  • Links to other languages
  • Relationship to iOS APIs and OSX APIs
  • Playgrounds and Xcode
  • Swift and Objective C working together

Basic Constructs of Swift Code

  • Basic datatypes, operators and logic
  • Variables and constants
  • Type annotation, type safety and types inference
  • Type conversion and casting
  • New Swift strings
  • Processing, concatenating and analysing strings
  • New datatypes for arrays and dictionaries
  • Relationships to Foundation and NSString/NSArray/NSDictionary
  • Printing to the Log

More Advanced Data Patterns

  • Type aliases
  • Tupples
  • Optionals – how to use and hidden dangers
  • Optional bindings
  • Nil, how it compares to NULL and nil in

Objective C

  • Assertions and debugging
  • For loops and range operators
  • Half closed range operator

Collections

  • Arrays
  • Literal arrays
  • Modifying and accessing
  • Mutable or immutable?
  • Differences from NSArray
  • Dictionaries
  • Comparing NSDictionary
  • Iterating collections

Control Flow

  • For, do, while
  • If, Else
  • Switch/Case
  • Swifts changes to traditional code
  • Dealing with implicit fall through
  • Range matching
  • Bindings, where
  • Control transfer, break, continue
  • Labelled statements

Functions

  • Defining and calling functions
  • Function parameters and return values
  • Default parameters, parameter names
  • External and shorthand parameter names
  • Variadic parameters
  • Constant and variable parameters
  • In/out parameters
  • Function types
  • Nested functions
  • Scope and closures
  • Closure expressions
  • Trailing closures and shorthand
  • Capturing scope
  • Closures as a reference type

Classes, Structures & Enumerators

  • Difference between Objective C, C and Swift
  • Structures in Swift
  • Classes in Swift
  • Comparing structures and classes, when to use one or the other
  • Properties and methods
  • Memberwise initialisers
  • Structures and enumerators, a comparison
  • Classes as reference types
  • Identity operators
  • Introspection
  • Assignment and copy behaviour
  • Forcing copies
  • Stored properties
  • Constants
  • Lazy loading
  • Computed properties
  • Getters and setters
  • Read only and computed values
  • Property observers
  • Global and local variables
  • Type properties
  • Instance methods
  • Local and external parameter names for methods
  • Self (this)
  • Subscripts
  • Inheritance
  • Base classes and subclassing
  • Overriding
  • Super class and subclass methods
  • Preventing overrides
  • Initialisations
  • Delegation
  • Initialiser delegation for value types
  • Class inheritance and initialisation
  • Initialiser chaining
  • Safety checking and automatics
  • Default properties within closures and functions
  • Deinitialisation
  • Automatic reference counting ARC
  • Strong and weak references
  • Unowned references
  • Strong reference cycles for closures

Patterns

  • Model view control
  • Optional chaining
  • Calling via optional chaining
  • Extensions
  • Nested types
  • Protocols and delegation
  • extensions and inheritance
  • composition and conformance
  • Generics
  • Type Parameters and constraints
  • Associated Types
  • Where clauses

Advanced Operators

  • Bitwise operators
  • Precedence and associativity
  • Operator functions
  • Prefix and Postfix operators
  • Compound assignment operators
  • Equivalence operators
  • Custom operators

Applying Swift to Your Projects

  • Working with Foundation, UIKit and other Apple APIs
  • Plans for migrating your code from Objective C to Swift
  • Using Swift with Objective C
  • Extending existing Objective C classes with Swift
  • Building some simple swift applications

Swift Development 101 Yellow Belt - Introduction course, 3 days

£ 797 + VAT