Ios 12 Learn To Code

Master iOS 12 development with Swift 4.2 building full-stack apps in this brand new course. Incl. Core ML 2 & ARKit 2!

Last updated 2022-01-10 | 4.8

- Build full-scale iOS 12 apps
- Become a Swift 4 programmer
- Submit your app to the App Store!

What you'll learn

Build full-scale iOS 12 apps
Become a Swift 4 programmer
Submit your app to the App Store!
Develop Augmented Reality apps using the newest ARKit 2 framework
Develop CoreML 2 apps
Learn how to build apps with Firebase
Learn basic to intermediate iOS development

* Requirements

* Must have a computer running macOS High Sierra or Mojave (for some sections)
* Should have Xcode 10 installed
* The desire to learn and become an iOS developer!

Description

Welcome to the iOS 12 Masterclass.

This course teaches you how to build beautiful iOS 12 apps using the latest in Swift 4.2. This course is designed to be super accessible to beginners, so don’t worry if you don’t have any programming experience.

The course includes tons of engaging video tutorials and builds your programming know-how through project based learning. Build real iOS apps to build your portfolio, worthy of submission to the App Store.

All content is brand new with no reused material from iOS 10 or iOS 11 courses. All recorded on the latest version of Xcode 10. We cover Apple's updated ARKit 2 for building Augmented Reality apps as well as Core ML 2 & Create ML for creating apps that think with Machine Learning. You'll generate your own machine learning models that use Artificial Intelligence to recognize objects and faces in images and tone of voice in comments. You'll also be building 3D augmented reality apps that bring outer space into your living room and let you measure objects without any tools!

By the end of this course, you will be confidently programming in Swift 4.2 and be prepared to build your own apps or start a freelancing career as an iOS 12 developer.

You'll also create a portfolio of 15+ apps that you can show a potential employer.

Enroll today, and get excited about:

  • Building awesome apps including ones that use Firebase, Core Data, Cocoapods, machine learning and augmented reality

  • All the knowledge you need to start building any app you want

Why should you trust us with your time?

Time is short. You have to make the most of every minute. If you wanted to watch boring instructors teaching outdated content, you’d be elsewhere.

By getting this course, you can relax knowing that everything we’ve created has been carefully designed and edited. We have put a lot of time and thought into each lesson to make sure they are easily digestible, even for beginners. There are animated lessons that explain some of the tricky concepts with practical examples and we're always available to answer student questions.

By the end of the course, you'll completely understand:

  • What’s new in Swift 4 and Xcode 10: Perfect for experienced developers who want to get up to speed.

  • Object Oriented Programming (OOP): Variables and constants, functions and loops, inheritance and polymorphism, optionals and enumerations, classes and protocols.

  • Control Structures: Using if/ else clauses, switch statements, and boolean logic to control the flow of execution.

  • Data Structures: How to work with collections like arrays and dictionaries.

  • Software Design: How to organize and format clean code for optimal readability and how to implement the Model-View­-Controller (MVC) design pattern.

  • TableViews & CollectionViews: How to display and update information in UITableView and UICollectionView

  • Networking: How to make asynchronous calls to RESTful APIs, store and retrieve data from the Internet, and use the JSON format for working with data.

  • Persistent Local Data Storage: How to use Core Data, Codable, and User Defaults to store your app data locally. (Upcoming)

  • Create an eCommerce app using Firestore, Firebase, Cloud Functions and Stripe (COMPLETED! 16 hours!)

  • Machine Learning: Build apps that use artificial intelligence and build your own machine learning models using the new Core ML 2 and Create ML frameworks.

  • Augmented Reality: Play with 3D objects in augmented reality and create breathtaking animations and real-life interactions using the updated ARKit 2 framework.

  • Submitting Apps to the App Store: Learn how to create certificates and deploy your apps to the App Store.

See what our past students had to say about our other content:

STUDENT REVIEWS

"Caleb's approach to presenting the concept concepts contained within the iOS 12 platform is truly unique.  He not only has the command of all the subject matter he teaches, but his jovial disposition and subtle humor make this series a worthwhile investment.  Typically, you would be searching for hours to hit all of these topics, and to find it all in one spot, is a great, great value” –Douglas Spencer

"I've taken several courses taught by Jonny, including for iOS, macOS, and Android.  He is a very down to earth instructor that makes learning enjoyable.  He takes the time to make sure you understand the topics he is teaching.  And it doesn't stop when the videos end.  He is very active with his community of students on social media and is more than happy to provide extra help when asked.   It's been a pleasure to learn new things with Jonny!” – Keli’i Martin

"Super excited to be jumping back into iOS development at the same time that Caleb and Jonny are branching out on their own. I’ve taken courses taught by them before and found the content to be first-rate and if I ever had a question about a topic I was struggling to understand they were always happy to help.” – Conor Howard

“Jonny B is an excellent teacher and mentor. He produces high quality content that makes hard topics easy to digest. Jonny is always open to taking on student questions and answers promptly.” – Dr. Chris Le Brese (Senior Android Engineer – 5 years experience)

We're so confident that you'll love this course that we're offering a FULL money back guarantee for 30 days! Sign up today with ZERO risk and SO MUCH to gain.

What are you waiting for? Click the 'Buy Now' button and happy coding!

Who this course is for:

  • Beginners to coding
  • Beginners to iOS app development
  • Android developers who want to learn iOS
  • Web developers who want a mobile experience for their web products

Course content

20 sections • 255 lectures

Intro to Course Preview 05:56

In this video, you will become familiar with the content outline for this course going all the way from learning Swift 4 to building cool ARKit and Core ML iOS 12 apps.

Installing Xcode 10 Preview 02:05

In this video, you will learn how to install Xcode, the application you will use to write Swift 4 code and build iOS apps.

Your First iOS App : Part One Preview 12:02

Your First iOS App : Part Two Preview 15:23

Choose Your Own Adventure! Preview 02:27

Some pointers on how to take this course depending on your previous experience.

READ THIS: How to get help Preview 01:42

When learning to code, you may need help. Read this article and learn how to get help the right way.

Meet your instructor: JonnyB Preview 01:07

Learn how JonnyB taught himself to code and how he came to be an iOS 12 teacher.

Meet your instructor: Caleb Preview 02:07

In this video, you will meet Caleb, a co-instructor in this course. You will hear his story and his credentials as well.

Our Stories - Optional reading Preview 09:13

Jonny and Caleb share how they taught themselves to code and became iOS developers.

Xcode 11 Updates Preview 09:11

Xcode 11 Updates (Text) Preview 02:56

Welcome to Swift! Preview 00:43

Welcome to the Swift 4 programming language. In this video, you will learn the fundamentals of programming by playing in Xcode Playgrounds.

Intro to Section Preview 01:17

In this video, you will learn what you will learn in this section.

Variables & Constants Preview 14:58

Variables and constants are the building blocks of many iOS applications. Learn the difference between the two and how to declare and use them in Swift 4.

Strings Preview 04:15

Text data is all around us. It's everywhere – social media, news articles, captions in movies. In this video, you will learn about the String type which is used for holding textual data.

Numbers Preview 08:03

Without numbers and math, there would be no computers. Learn how to declare different types of numbers in Swift 4.

Booleans Preview 04:44

True or False: Booleans are easy to use. After this video, you'll know for sure.

Xcode Tour Part 1 Preview 12:18

In this lesson we take an in depth look at Xcode 10 to use in developing iOS 12 apps.

Xcode Tour Part 2 Preview 10:16

In this lesson continue our in depth look at Xcode 10 to use in developing iOS 12 apps.

AutoLayout: The Problem Preview 09:31

AutoLayout solves some difficult problems for us developers, find out what they are in this lesson.

Beginner AutoLayout Preview 08:42

We begin our dive into auto layout.

Alignment Preview 11:28

Use the alignment tools to, well, align your UI elements!

Layout Challenge Preview 00:55

LoginScreen AutoLayout Preview 06:55

Images in iOS and where to get image resources Preview 15:39

How to use images in iOS and how to export them in the correct forms.

Images in iOS Links Preview 00:17

StackViews Preview 22:25

StackViews make many layouts easier to implement in iOS 12 apps

StackViews Challenge Solution Preview 00:14

Scroll Views Preview 08:38

Designing for iPhone X Preview 05:00

Arrays Preview 08:15

In this video, you will learn about a Swift 4 collection type called the Array.

Dictionaries Preview 07:19

In this video, you will learn about the Swift 4 collection type, the Dictionary and how it differs from an Array.

Functions Preview 11:23

Functions are where programming really got my gears moving. Learn how to write and use them in Swift 4.

Control Flow & Loops Preview 18:03

Loops let you repeat a certain operation in specific circumstances. Learn both when and how to use loops in Swift 4.

BingeBot – Intro to App Preview 01:35

In this video, you will be introduced to BingeBot – an app you will build to select a random TV show to watch.

BingeBot – Building User Interface Preview 12:32

In this lesson, you will build out BingeBot's user interface.

BingeBot – Adding Shows to BingeBot Preview 13:30

BingeBot – Selecting Random Show Preview 03:39

In this lesson, you will learn how to select a random item from an Array and display it in BingeBot.

BingeBot Challenge Preview 00:27

You will be challenged to fix an issue with BingeBot and make it your own!

Swift Optionals Preview 15:58

In this lesson you will learn how to use optionals in Swift 4

Classes Preview 06:29

Classes are one of the building blocks of your application, learn how to use them in this lesson

Class Initializers Preview 12:16

In this lesson learn how to use class initializers

Computed Properties and Observers Preview 13:55

Computed properties and property observers can be very useful. Learn how to use them in this lesson.

Structures Preview 07:28

Structures are similar to classes but also have important differences.

Class v Struct Preview 14:21

We dive deep into understanding the differences between class and struct.

When to use class or structure articles Preview 00:08

Inheritance Preview 11:33

Enumerations Preview 12:52

Learn how to use Swift enumerations and switch statements.

You down with MVC? Preview 06:06

"Yeah, you know me!" If you're down to learn about one of the most popular iOS application design patterns, look no further!

Controller Preview 12:36

In this video, you will learn how the Controller layer works in the context of a real iOS app.

View Preview 08:11

In this video, you will learn how the View layer operates in the MVC design pattern in an iOS app.

Model Preview 08:20

In this video, you will learn how to Model layer works in an iOS app.

Intro to GoodEatins Preview 01:23

Check out the app we are going to build in this app!

Data Set for GoodEatins Preview 14:51

Get the data set we are going to need.

Project Setup and DataModel Preview 11:13

NavigationController and TableView Preview 14:27

How navigation controllers work.

Protocols and Delegates Part 1 Preview 09:30

Introduction to protocols and delegates.

Protocols and Delegates Part 2 Preview 16:53

How to implement protocols and delegates in your iOS 12 projects.

Implementing TableView Preview 23:59

How to add tableViews and understanding their delegates and protocols.

Delegates and Protocols Further Explained Preview 01:56

If you need some extra practice with delegates and protocols check out this article!

Passing Data in PrepareForSegue Preview 13:13

A common requirement is to pass data from one VC to another. Learn how to do that here.

Xcode 11 Update for Collection View Cell Preview 00:16

Setting up UICollectionView Preview 10:07

CollectionViews are a great way to present data to your user.

CollectionView Protocols Preview 15:02

Setting up and understanding the CollectionView protocols.

RecipeDetailVC Preview 19:28

We finish up our GoodEatins app with a closer look at the recipe details.

Intro to StarTrivia Preview 04:21

Check out the app we make while learning how to make web requests and communicate with APIs in iOS and Swift.

SWAPI is dead, long live SWAPI Preview 01:24

StarTrivia Project Setup Preview 05:05

In this lesson we add some assets we will be using and some other setup.

Adding Custom Font to Project Preview 05:27

In this lesson you learn how to add a custom font to an iOS project.

Creating the MainBio Preview 09:12

In this lesson we use StackViews to layout the main bio

Custom Views Preview 08:39

Web Requests and APIs Preview 12:31

Postman Preview 09:31

URLSession Preview 18:33

Parsing JSON Manually Preview 17:08

Swift Closures Preview 21:20

Learn how to make and use closures.

Additional Closures Information Preview 00:47

Completion Handlers Preview 20:51

In this lesson learn how to use completion handlers.

Updating Person UI Preview 08:28

In this lesson we update the Person UI.

CocoaPods Preview 16:09

Learn how to install Cocoapods and add them to your project

Alamofire Requests Preview 09:59

Parsing with SwiftyJSON Preview 11:39

Learn how to parse JSON with SwiftyJSON

Codable Preview 08:59

Learn how to use Codable to simplify working with JSON

Creating Button Assets Preview 11:20

In this lesson I take you through the process of creating the iOS icon assets for the buttons.

Segue Buttons Layout Preview 07:04

In this lesson we set up the segue buttons layout.

FadeEnabledButton Preview 12:17

In this lesson we learn how to add property observers to a subclassed button.

Setting up additional VCs Preview 09:12

In this lesson we add the 4 new view controllers we will need for the Homeworld, Vehicles, Starships, and Films

Passing Person Data Preview 16:12

In this lesson we learn how to pass the person data from our main vc to the others.

Creating Homeworld UI Preview 09:44

In this lesson we set up the Homeworld UI

Homeworld Data Preview 13:43

In this lesson we make our Homeworld structure and Homeworld API

Vehicles UI Preview 12:45

In this lesson we set up the Vehicles UI

VehiclesAPI Preview 14:00

In this lesson we create the vehicle structure,  api class, and set up the UI when retrieve a vehicle object from API.

PreviousNext Buttons Preview 15:07

In this lesson we add in the previous and next button functionality. We learn about ternary operators while we're at it.


Starships Challenge Preview 03:28

In this lesson it is your challenge to build out the Starships VC just like we did in the past three lessons with the Vehicles VC

FilmsUI Preview 12:45

In this lesson we get the UI set up for the final Films VC


FilmsAPI Preview 23:17

In this lesson we create out FilmsAPI class to retrieve the films information from the API.

StarTrivia Finale Preview 02:56

Progress Indicator Preview 04:00

Intro to Artable eCommerce App Preview 05:43

In this lecture we take a look at the app we are going to build.

Legalize Stuffs Preview 00:33

Artable Project setup Preview 14:05

Creating the Login UI Preview 15:33

Creating the Register User UI Preview 12:38

A note about the CocoaPods Preview 00:58

Adding the CocoaPods Preview 06:38

Integrating Firebase Preview 14:57

Registering new users Preview 21:24

Password Matching Preview 16:43

Constants Preview 10:04

Custom Views Preview 07:47

Learn how to make custom classes that provide styling so you don't clutter up your view controller.

Logging in Users Preview 15:36

In this lesson we learn how an iOS app can use Firebase authentication to log in users.

Setting up HomeVC Preview 13:33

The one where we set up the log in and out button.

Firebase User Additional Info Preview 07:10

Anonymous Login and Linking Preview 15:15

Firebase Error Handling Preview 16:42

Additional Error Handling Preview 07:40

Forgot Password Feature Preview 06:26

Forgot Password Feature Solution Preview 17:15

Housekeeping Preview 09:21

CategoriesVC UI Preview 09:37

Category Cell Preview 19:42

ProductsVC UI Setup Preview 08:26

Product Cell XIB Preview 13:24

Displaying Products Preview 11:12

In this lesson we will set up the table view delegate methods and create our first product cell.

Segues and Cleanup Preview 08:46

Intro to Firestore Preview 04:27

Initializing Firestore Database Preview 10:15

Kingfisher Preview 11:02

Fetch Single Document Preview 14:50

Improved Parsing Preview 03:39

Fetching Multiple Documents Preview 07:11

Realtime Updates Preview 11:47

Document Changes Part 1 Preview 15:51

Firestore Cache Preview 03:47

Document Changes Part 2 Preview 10:04

Queries and Ordering Preview 16:53

Finishing Up HomeVC Preview 12:26

Products Firestore Challenge Preview 09:30

Fetching Products Preview 08:56

Product Document Changes and Query Preview 17:34

Product Detail View Part 1 Preview 08:45

Product Detail View Part 2 Preview 13:46

Admin App Category VC Preview 10:24

Category Image Picker Preview 17:47

Intro To Cloud Storage Preview 09:44

Uploading Image to Cloud Storage Preview 14:48

Adding New Category To Firestore Preview 16:10

AdminProductsVC Setup Preview 17:37

Edit Category Preview 07:32

AddEdit Products UI and Challenge Preview 12:25

AddEdit Product Image Upload Preview 16:17

New Product Firestore Document Preview 28:52

New User Document Preview 19:21

UserService Preview 14:26

Selecting Favorite Products Preview 23:57

Intro to Firebase Cloud Functions Preview 06:43

Initializing Cloud Function Project Preview 16:26

Intro to Stripe Preview 06:09

Creating Stripe Customer Part 1 Preview 16:15

Creating Stripe Customer Part 2 Preview 11:46

Checkout Cart UI Preview 17:47

Stripe Cart Preview 11:20

Displaying Cart Items Preview 10:24

Display Payment Details Preview 09:26

Add and Remove Cart Items Preview 08:41

Create Ephemeral Key Preview 22:56

StripeApi Class Preview 10:53

Customer and Payment Context Preview 17:19

PaymentContextDidChange Preview 19:04

PaymentContext DidFailToLoad Preview 06:35

Client Side Payment Process Preview 19:32

Create Charge Cloud Function Preview 11:41

Fixing the Admin App Preview 04:31

Firestore Security Rules Preview 22:59

Updates, clean up, and guest experience Preview 12:06

Artable Conclusion Preview 01:31

Source Code Preview 00:26

Updates to Stripe and Source Code!! Preview 02:04

Behind the scenes introduction Preview 03:26

Live Code 1: Project Setup Preview 01:24:52

Live Code 2: Adding the reset password modal Preview 19:53

Live Code 3: Error Handling Preview 33:04

Live Code 4: Password confirmation Preview 46:54

Live Code 5: Facebook Login Part 1 Preview 36:17

Live Code 6: Facebook Login Part 2 Preview 36:14

Live Code 7: Fetching and Using Facebook Data Preview 29:51

Live Code 8: Linking anonymous and Facebook login Preview 35:35

Live Code 9: Finishing login and starting Firestore Preview 37:31

Live Code 10: Firestore Snapshot Listener Preview 21:15

Live Code 11: Category Collection View Preview 32:24

Live Code 12: Products Table View Preview 30:24

Live Code 13: Working with Stripe Demo Preview 23:20

Live Code 14: Setting Up The Admin App Preview 59:07

Live Code 15: Admin Uploading Category Preview 58:07

We struggle through a major bug, but eventually emerge triumphant!

Live Code 16: Add Edit Product Preview 24:16

Live Code 17: Upload Product Image Preview 31:49

Live Code 18: Uploading Product Document Preview 32:14

Live Code 19: Editing Categories Preview 33:01

Live Code 20: Document Changes Preview 34:20

Live Code 21: Product Detail View Preview 46:24

Intro to ARKit Preview 07:57

Let's check out what ARKit actually is and why it's a game changer!

First AR Project Preview 13:39

Become familiar with the AR template project.

Recreating AR Template Preview 07:22

Recreate the ARKit template so that you understand fully what goes into it.

Adding our own objects Preview 16:29

Learn how to use and add SCNObjects to your AR SceneView

CUBES ATTACK! Preview 15:49

In this lesson we have some fun randomly adding cubes into our ARKit space.

Intro to Intergalactic Fun Preview 01:01

Check out the ARKit app we are going to make in this section. It's out of this world....

Planet Selector Part 1 Preview 11:44

Go through the process of setting up the TableView for selecting the planets.

Planet Selector Part 2 Preview 13:46

Go through the process of setting up the tableView to select the planet to show in ARKit.

Adding a planet Preview 13:16

If you skipped the last two lessons that covered the tableView set up, be sure to download the attached assets here to get started wit the ARKit portion.

Adding SCNText Preview 12:16

Adding the Ship Preview 07:24

Learn how to access nodes within a SCScene.

Up and Down Preview 06:17

Learn how to apply actions to SCNObjects.

Space Ship Challenge Preview 00:39

Intro to ARRulez Preview 00:56

Check out this fun ARKit measuring app.

Touch and HitDetection Preview 08:54

In this lesson we learn how to detect touches on screen and how to extrapolate that to a detected hit in the AR scene.

HitResult WorldLocation Preview 08:52

How to obtain the world location of a hit result.

Calculate Distance Between Points Preview 05:10

Use GLKit to determine the distance between two SCNVector3s.

Adding Text Measurement Preview 14:00

Adding and working with SCNText.

Billboard Constraint Preview 03:18

Utilize the billboard constraint to have the view always facing the user.

Challenge - Unit Change Preview 00:15

Challenge - Unit Change Solution Preview 04:33

See how I implemented the UnitChange challenge.

Intro to the King and Queen Preview 00:43

Learn what you are going to make in this section, an awesome app that uses iOS 12s new ImageTracking technology.

What makes a good tracking image Preview 10:28

Some images are easier to detect for ARKit. Learn what makes good and bad images.

Good image v Bad image Preview 00:10

ARImageTrackingConfiguration Preview 12:11

Understand the ARImageTrackingConfiguration

Adding 3D Models Preview 16:20

How to add 3D models to your ARKit app.

Where to find 3D Models Preview 00:11

Differentiating Images Preview 11:47

How to determine which image has been detected.

Calculating Distance Between Images Preview 07:51

Given two detected images, how to calculate the distance between them.

Challenge Solution - SpinJump! Preview 07:41

The solution and actions I came up with for the SpinJump challenge.

Intro to Moving Pictures Preview 00:49

Project Preparation Preview 08:48

Detecting Images and Adding Planes Preview 08:15

Adding Video Preview 10:46

Core ML 2 Section Introduction Preview 00:39

In this article, you will learn about the mindblowing Core ML 2 and what you will learn in this section.

Intro to Core ML 2 Preview 02:43

In this video, you will learn more about Core ML 2 and see the app you'll build in this section.

What is Machine Learning? Preview 04:07

If you don't have a data science or machine learning background, no worries! We will explain how machine learning works in general.

Creating Machine Learning Model with Create ML Preview 06:57

In this video, you will use Create ML to generate a Core ML 2 model that we will use later on to classify fruits.

FruitClassifier: Building User Interface Preview 06:40

In this video, you will built the interface for the fruit classifier app.

FruitClassifier: Setting Up Camera & Photo Selection Preview 14:05

In this video, you will enable camera/photo access for the fruit classifier app.

FruitClassifier: Create & Process Machine Learning Request Preview 13:58

In this video, you will use Vision and Core ML 2 to classify images for the fruit classifier app.

FruitClassifier: Handle Request & Update User Interface with Prediction Preview 08:43

In this video, you will handle the request and update the UI with prediction data for the fruit classifier app.

Intro to App: Anti-Bully Preview 01:53

In this video, you will learn about the app you will build – Anti-Bully. It uses Core ML 2 and Create ML to generate a text sentiment analysis model that we can use in an iOS app.

Training ML Model with Create ML Preview 14:50

In this lesson, you will use Create ML to train a machine learning model.

Creating Project & Building UI Preview 06:21

In this lesson, you will create an Xcode project and build out the user interface for Anti-Bully.

Creating Model and View Layer Preview 07:48

In this lesson, you will build the Model and View layers for this app.

Creating and Setting Up ViewModel Preview 11:43

In this lesson, you will learn about the ViewModel and it's part in the Model-View-ViewModel design pattern. You will code your own ViewModel.

Connecting Controller to ViewModel Preview 11:06

In this lesson, you will tie everything together by linking the ViewController to the ViewModel and performing text analysis.

Developer Account Preview 16:20

In this lesson we learn about the Apple Developer account and how to sign up.

Uploading Build Preview 11:35

In this lesson we learn how to archive and upload an iOS build.

Submitting to App Store Preview 10:36

Finally get to push the submit button for App Store review!

Updating an app Preview 07:44

HTTPS Export Compliance - Important Preview 00:13

Bonuses!!!!! Preview 00:10

Sketchpacks Special Offer! Preview 01:04