
What is Swift and where does it come from ?
See how this course will evolve over time with the addition of new modules.
Swift was designed to bring to programmers the best of both worlds: ease of use and speed leaving behind the complications of C
How to download Xcode 6 from Apple’s web site.
Playgrounds are a new powerful feature of the Swift programming environment
Explore playgrounds, where the left area types commands and the right area shows real-time results, with variables, console output, and the red dot for errors.
Master Swift syntax essentials, including optional semicolons, one-line and multi-statement code separated by semicolons, and how to write // and /* */ comments; remember Swift is case sensitive.
Explore how Swift uses var to declare variables and let for constants, with type inference that assigns string, integer, boolean types automatically, and change values with the equals operator.
Discover how to use Swift operators to manipulate values, from assignment and arithmetic to comparison and conditional operators, with examples of dictionaries, ranges, and string interpolation.
Explore tuples as collections of values of different types gathered in a single compound identified by a name, with components accessible by index or by name, enabling retrieval and mutation.
Master loops in Swift by using for statements and range-based iterations. Learn to count from 0 to 9 or 0 to 29 and compare closed versus half-open ranges.
Master variadic parameters in Swift, where a variable number of strings forms an array inside the function, using three dots at the end, and join them with a separator.
Discover how function parameters are immutable by default, how to use var and inout to modify values inside and outside a function, and swap two strings with a temporary variable.
Explore the difference between iOS and macOS playgrounds, learn how Cocoa Touch extends Cocoa for iOS, and build a label with a frame, color, and centered text using Xcode.
Leave playgrounds and build real apps by packaging swift code and resources for macOS or iOS devices. Create your first project by choosing templates, naming the app, and saving it.
Create your first Swift app in Xcode, using a storyboard with a label and buttons, wired to code via outlets and actions, then run it in the iOS simulator.
Explore the app delegate and view controller lifecycle, including launch and background transitions. Learn to customize setup, data handling, and memory warnings.
Begin a swift game project using a game template to create a version of flappy bird with sprite kit, and use an asset catalog for 1x, 2x, and 3x graphics.
Explore SpriteKit scenes, where nodes and sprites form a small world with labels and fonts, actions like rotation, physics with gravity and collisions, and monitor frame rate for smooth gameplay.
Define game scene size, create a bird node as an actor with a sprite, position it at screen center using a CG point, and add it to the scene.
Create top and bottom columns with a reusable function, loop to spawn them with random vertical positions and a fixed gap, implementing parallax ground and blue sky.
Learn to detect collisions in a game by implementing the physics contact delegate, defining category bit masks, and handling sprite interactions like bird–ground and bird–column contacts to reset the game.
Reset the game by handling collision events, showing an ouch label, and restarting the scene’s physics, speed, and positions while removing columns through the colonnade node to reinitialize the environment.
# last update oct 5th 2014
Welcome to Swift, the brand new programming language from Apple. If you approached iOS development and always felt that Objective-C was a bit too complicated, then Swift will make your life a lot easier.
According to Wired "it will instantly remake computer programming" and it will be the core of iOS8 programming and further.
Even if you already know Objectve-C you will find great productivity advantages in starting to use Swift.
The only pre-requisite is to have familiarity with basic programming concepts (i.e. what is a variable, what is a control structure, etc.); we'll take care of the rest along the course.
More sophisticated concepts related to object-oriented programming will be dealt with in the curriculum.
The course will keep growing along time with new topics added. As new more advanced topics are added, the price will increase; so the sooner you enroll, the less you pay ! You will get all future updates at no extra cost.
The plan is to keep adding two new topics per month; these could be real app examples or explanations of Cocoa frameworks.
After a few months of beta testing Swift has finally reached version 1.0: this means you can develop and submit real apps to the App Store. After studying the language basics, it will be time to learn dealing with the Cocoa and Cocoa Touch APIs; finally you will be introduced to building real apps using Xcode. For a Flappy Bird alike game is used to get into the inner workings of Sprite Kit.
Almost every language module is conceived as two parts: an introductory and theoretical session with slides, followed by practical programming examples.
Of course we need and we appreciate your feedback to improve the course. And if you feel like we missed some topics or you'd like some explained, just let us know !