Swift Fundamentals


Swift Fundamentals is a two-day training course that introduces you to Apple's great new programming language. Whether you are brand new to programming or have some experience with other languages, this course is a great starter to get you on the road to building iOS / macOS apps.


The only prerequisite is some basic usage of a Mac. Everything you need to know will be taught on the course.

What will you learn?

  • Xcode 8: Xcode is Apple’s IDE. No course would be complete without having an understanding on how to use Xcode to manage and compile your code.
  • Overview of Swift: Swift builds on the best of C and Objective-C but does not have the constraints of C. Here we will discuss the role of Swift, why Apple developed it and the problems it tries to solve.
  • Constants and Variables: Swift comes with its own version of variables. Here we will look at how Swift handles different types of values specifically Integers and Doubles.
  • Operators: Swift supports a lot of the standard operators other languages support. We will take a look at these as well as other options Swift provides.
  • Strings: Swift has a very fast and modern approach to handling strings and characters. Here we will look at the various ways strings can be manipulated.
  • Collections: Swift provides two collection types, arrays, and dictionaries. Here we will look at how you can use these to handle sets of data.
  • Control Flow: Swift supplies standard control flow mechanisms, similar to C but also includes additional features to help you execute different branches of your code. These include if/else, guard/else, switch, and ternary operators.
  • Repeating: Swift supplies a number of ways to loop a section including: for loops, while loops and repeat/while loops
  • Functions: Functions are self-contained pieces of code that perform specific tasks. Here we will look at Swift’s implementation as well as a feature called a “tuple” that allows a function to return multiple values.
  • Closures: Closures are similar to Blocks in Objective-C. They are self-contained code blocks that can be passed around. We will look at how you implement these and why they are a powerful feature of Swift.
  • Enumeration: Enumerations let you define a common set of values to create a new common type that you can use in Swift
  • Structures: Structures are at the hearts of Apple’s APIs for iOS and OS X development. Learn what a structure is, how to design and create them. We will also look at a feature called inheritance, which allows you to string several classes together.
  • Classes: Classes builds on structures and add features such as pass by reference and inheritance.
  • Properties: Learn how to use properties to store values for a particular class.
  • Methods: Methods are functions that are associated with a particular type. Here we will see how you create and utilise them
  • Memory Management: Apple has really simplified memory management in your apps however it’s still a good idea to understand how memory management works. We will look at the principals behind retain counts and take a look at ARC, which is Apple’s automated memory management system.
  • Playground: Playgrounds make writing Swift code productive and easy. Type a line of code, and the result appears immediately. See how you can use the playground to experiment with snippets of Swift code.


Duration: 2 Days
Price: £495 + VAT

Upcoming Classes

3 - 5 May, London
3 - 5 June, London
3 - 5 August, London