There are few resources about iOS development with Swift nowadays because it is such a new language. The old language--Objective-C--has tons of online and written-book resources, but we don't want to push an older language on you guys, so this Resources page will only contain Swift resources.


There are two major books you can use right now to learn about iOS development in Swift:

The Swift Programming Language - This book, released by Apple, touches upon the basics of Swift syntax and capabilities. This is the perfect book for students like you who are seeing the Swift language for the first time ever.

Using Swift with Cocoa and Objective-C - This book, also released by Apple, touches upon how Swift ties in to iOS development and Xcode, as well as how to use several Apple-provided developer libraries in Swift. This book also talks about integrating Swift with Objective-C, but this is not a focus for the class. This book may prove instrumental after you've gotten used to Swift syntax.


Here are some good web resources to use throughout the course to help understand some of the concepts, or to reference as you do your homeworks/projects.

The Apple Documentation - this is a massive source on information about iOS development (because this website is from the same guys that started iOS development). This is great when trying to work through the beginner concepts (working with classes, protocols, etc), and will also prove helpful later when you want to know more about the documentation of specific Apple-defined classes (such as NSDateFormatter, or something like that).

Ray Wenderlich's Tutorials - Ray Wenderlich's tutorials are also very popular (and are probably a lot more beginner-friendly than the Apple documentation). He was very quick to put out loads of Swift documentation, so you may find his resources extremely helpful, even invaluable. Be sure to check out his Swift cheat sheet!

Sample Code

Sometimes the best way to figure out you are doing something wrong, is to see someone else do it the right way and question why. Here's a list of good, fun examples of Swift projects that may help provide some guidance.

swift-2048 - A Swift implementation of 2048.

FlappySwift - A Swift implementation of Flappy Bird.