Buying for a Team? Gift This Course
Wishlisted Wishlist

Please confirm that you want to add Build your first mobile game for iPhone Swift/iOS having fun to your Wishlist.

Add to Wishlist

Build your first mobile game for iPhone Swift/iOS having fun

Learn Swift, iOS and SpriteKit while having fun, learn programing from the ground up every and learn while playing games
4.8 (11 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
111 students enrolled
Created by Icaro Lavrador
Last updated 5/2016
$19 $200 90% off
30-Day Money-Back Guarantee
  • 4 hours on-demand video
  • 3 Articles
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Have a coupon?
What Will I Learn?
Create a fully functional game
Have a deeper understand of the problems that can happen while coding and how to solve it
Student will be able to create code easy to understand, test and scale
View Curriculum
  • Students must have XCode installed and working
  • Basic knowledge about XCode and programming

Have you ever imagine yourself as a spy, breaking codes, picking locks? In this game you will have to crack the secret code to pop the lock, and more you will have to build this game from scratch if you want to play it and learn a lot about Swift, SpriteKit and iOS while doing so.

The game is fun to play and watch others playing, however it is just a fun way for me to teach you all you need to know to be a excellent Swift/iOS developer.

Trougth the course of this course we will learn about:

  • SpriteKit Framework and its boiled plate code
  • Extensions, what is and how to use
  • How to encapsulate our code and use private variables, getters and setter and why
  • How to refectory your code as you go, what is refectory and why you should always do it
  • Loops, different kinds of loops, with one to use for different scenarios and why
  • Inheritance, including initializers, convenience, required, overriden how to do it right
  • Properties, including property observers and computed properties, what it is and how to use
  • Protocols, I know you hear about it before, but do you really understand what it is and how to use?

In this course we will cover one topic at the time as we need we will discuss itm examine the options and add to our game to make it more and more awesome

Who is the target audience?
  • Anyone looking to learn or deeper it's knowledged in Swift, iOS or SpriteKit
  • Anyone that want to learn while having fun making a game
  • Anyone open minded that want to be leading and not following
Students Who Viewed This Course Also Viewed
Curriculum For This Course
Expand All 27 Lectures Collapse All 27 Lectures 04:09:09
Start Here
3 Lectures 03:59

Find out a little bit about me in this video

Preview 02:26

Post here your ideas for new BONUS sections so we can vote and together decide what new features we can implement in this already amazing game

Preview 00:31

Introduction to SpriteKit
1 Lecture 09:16

When we create a new project in XCode it give us a lot of boiled plate code that most of people take for granted it is very important to understand what it does and why it is there before we start put our own code in.

In this lecture we will learn:

  • How to create a new SpriteKit project
  • Understand the Boiled Plate code that it generates
  • Delete the unnecessary code for our project
Create a SpriteKit project and understand the boiled plate code
Creating Extensions
1 Lecture 07:47

Sometimes we can change our mind, in this case we can code our game all in one color to decide to change it later on, if we color been create all over the place will be very difficult and time consume to find the right place to change, this is why Extensions are so important

In this lectures we will learn:

  • Why and when we should use Extensions
  • How to create a new Extension
  • How to name a Extension
  • How to use the Extension 
Preview 07:47
Starting the game, initializers and new classes
3 Lectures 38:45
Creating PadLoackSKShapeNode class

Adding a pin class to the PadLockSKShape
Add animation to our game
1 Lecture 15:30
Add rotatition to the pin
Add helper functions
1 Lecture 10:46
A little maths in the getNewTarget function
Creating a target and make it fun
4 Lectures 31:44

It is very important to know when to create setup functions as it can make our code much clean and easy to read and understand.

In this lecture we will learn:
  • How to create a setup function that store values for future use by another function
Setup the target first and just call the getNewTarget function later

Once we store the values we need in the setup function we need to use this values on demand as we need.

In this lecture we will learn:

  • How to use stored values to create new targets as we need
  • Refectory code to easy readability and understanding 

Create new targets on demand

Setup the target first and just call the getNewTarget function later

Some times two random numbers can be two close together what does not work very well to our game, we need to find a way to create a space between the targets to make the game more enjoyable, and we never know if we will need to create one, two or ten random number to have this new position.

In this lecture we will learn

  • Repeat while loop, how to drawn new random values until a valid value in draw
Creating some space between two given targets
Lets see now how easily we can change your game
1 Lecture 05:02
Minute of appreciation for what we build so far
The game cycle
4 Lectures 49:20
Creating some space between the targets

Create a SKNode to keep our target as children

Collision detection setting up PhysicsBody

Using booleans to create a "switch" in part of the expressions
Making the code more useful, more reliable and expandable
1 Lecture 11:55

Sometimes many ideas come to mind and we don't know were is the "correct" or more appropriate place to put the code, even because we don't know the full picture yet, this is why refactoring is so important. When refactoring we shouldn't be changing any of the functionality of the application just rearranging the current functionality to the correct place.

In this lecture we will learn:

  • How to properly refectory our pop the lock game
Refactoring, creating a GameController to isolate the game logic
5 More Sections
About the Instructor
3.8 Average rating
363 Reviews
3,572 Students
9 Courses
Swift Expert|Senior iOS Developer|Udemy Premium Instructor
  • I am an "eternal student", I start programing when I was just 10 years old and to this day I still learning new things every day.
  • Because of my passion in learn new things I developed a passion to teach as well, I start helping people at Stackoverflow where I am ranked as the top 10% Developer Help for Swift and top 20% Developer Help for iOS.
  • You will not see my name in many app as I am the go to guy to fix problems, I offer my work mainly as a contractor solving problem that the others professional cannot solve.
  • I start develop software and consultancy when I was 15 years old and never stop, today I want to help people because I read every day the code produced by the professionals in the field and I can honest say they are mostly JUNK.
  • One of my clients try to use an Udemy iOS course to argue about some strategies he took in his code. After see so many WRONG explanations, so many BAD advice I decide to create my own courses. I watch over 15 top rated courses at udemy and out before decide to take action
  • My courses are create to make YOU the best in the field, I can guarantee that if you take my courses you will drop jaws in interviews, companies are desperate looking for good developers and they will pay you over $100k/year to work for them.
  • But you have just one shot to impress, so make it the right one, learn right, learn it once, make money forever.
Report Abuse