Hacking with Swift is a complete Swift training course by Paul Hudson that teaches you app development through 38 hands-on projects. Everything is taught as part of a practical project, so you can immediately apply your knowledge as you learn. All project files are open source available on GitHub.
I featured this Project on Product Hunt, because it helped me learning one of the most interesting programming languages. I things, this book is the best way to start developing for iOS and Mac OS.