iLaunch Curriculum Index
Navigate the Curriculum and More
First Year Curriculum
Swift, SpriteKit, and Your First App
Every year over the summer, our Head Captains reinvent our entire Year 1 Curriculum. With the school year begins, we keep four weeks (8 lessons) ahead of the curve, so that you can still look ahead at future lessons. Why do we revise?
-The Xcode IDE and the Swift Language update very often. We want to make sure that all syntax is up to date.
-Every year, we keep close track of what about the curriculum worked, and what didn't for Year 1 Developers. Revisions allow a more polished and cohesive curriculum every year!
This page is home to all the lessons and information for upcoming Year 1 developers. At the end of the curriculum, the objective is to prepare developers with information we believe critical to successfully making and publishing a game. The first 25% of the curriculum focuses on the Swift language, while the rest focus on the SpriteKit Framework.
During lessons, click into each lesson to follow along, and review them afterwards for a refresher!
As a Part 2, we also have Gamethon Resources, which is made up of templates and more information to help you create your game.
Part 1: Year 1 Curriculum
Learning Swift and the SpriteKit Framework so that you'll be ready to create your first game.
Lesson 1: Introduction to Programming in Swift
Introduction to programming
Swift, Xcode, Data Types, Var/let, Declaring/Initializing, etc.
Lesson 2: Operators & Arrays
Arrays and append
Generate random numbers
Lesson 3: Control Flow and If Statements
Loops- while and for
Lesson 4: Functions
Making a Swift function
Lesson 5: Classes and Encapsulation
Creating a class
Object Oriented Programming
Lesson 6: Swift Inheritance
Inheritance in Swift
Continuation Object Oriented Programming
More on classes and objects
Lesson 7: Xcode Projects
Making a Project
Walking through files
Making classes in projects
Lesson 8: SpriteKit and Documentation
Draw a background
Lesson 9: Extensions and SpriteKit cont.
Extensions for nodes
More on SKSpriteNode and SKLabelNode
Lesson 10: SpriteKit Physics
Lesson 11: Rolling the Ball
Physics Ball Project
Lesson 12: Beginning Torchbearer
In a project:
- Sprites on screen
- Screen template
- Collision checking
- Touch functions
Lesson 13: Torchbearer Extended
Adding the Extended Sprite in Torchbearer
Lesson 14: Bullet Time
Lesson 15: Score and Game Over
Game Over popup
Score and highscore
Lesson 16: Scenes and Screens
Changing View Controller
Lesson 17: Gesture Recognizers
Changing screens with gestures
Lesson 18: Light and Emitters
Lesson 19: Decorating Torchbearer
Lesson 20: Persist Data and Wrap Up
Review Sessions and Practice Projects
Intro to Gamethon
Intro to Gamethon
Going over everything we've learned so far in preparation to make a game.
Part 2: Gamethon Resources
Coding and Releasing Your First iOS Application
Click to the right to learn about Gamethon. To sign up, contact one of the Head Captains. There are no "curriculum-esque" meetings during Gamethon, but below are some resources you may find helpful.
The Screen Template, SKSpriteNode/SKLabelNode extensions, Extended Sprite, Button Class
Using .sks files
In introduction to creating Levels in Xcode using .sks files (like Angry Birds or Cut the Rope)
Using SKEffectNode to apply blur, warp, transforming effects to your app.
Using SKCameraNodes to zoom in/out, change perspective, scroll through scene, etc...
Making Shapes such as arcs and blobs instead of just rectangles and circles in Swift.
Allow you to automatically rank app data with other local players (e.g. ranking local highscores)
Making your screen have mulitple UIViews
Saving Custom Objects
Making persistent custom objects
Implementing Ads unobtrusively into your app
Submitting Your App
How you can submit your code to the App Store for review and publish it onto the App Store.
Updating Your App
How you can update your app if you decide to make changes