Intermediate and Advanced iOS - Build Real World Apps
4.8 (52 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
518 students enrolled

Intermediate and Advanced iOS - Build Real World Apps

Learn iOS 12, MVVM Design Pattern, Firebase (Firestore), Instagram Clone and Swift Language
4.8 (52 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
518 students enrolled
Created by Mohammad Azam
Last updated 2/2019
English [Auto]
Current price: $13.99 Original price: $19.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 8.5 hours on-demand video
  • 54 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Intermediate and advanced iOS development skills
  • Building real world apps using start to finish
  • MapKit integration with Firestore cloud database
  • iOS App integration with Web API using JSON
  • Camera App with filters
Course content
Expand all 73 lectures 08:22:04
+ High Waters - Building the User Interface
6 lectures 36:49
Locating and Displaying User's Current Location
Adding the Add Flood Button
Adding Annotation to the Map
Zooming into User's Location
+ High Waters - Integrating with Cloud Firestore Database
6 lectures 01:07:05
What is Cloud Firestore Database?
Configuring Firebase Firestore for HighWaters App
Installing Firestore and Configuring Firebase Console
Hello Firestore Database
Saving Flooded Regions in Firestore Database
Fetching Flooded Regions from Firestore Database and Displaying them on Screen
+ High Waters - Custom Annotations
4 lectures 29:07
What we will be building?
Implementing Custom Annotations Views
Removing Flood Record from MapView and Firestore Database
Removing Flood Record for Multiple Users
+ Good News - Implementing the User Interface
7 lectures 41:27
What we will be building
Understanding MVC Architecture
What is Wrong with MVC?
Understanding MVVM Design Pattern
Setting Up the Appearance of the App
Implementing Custom Self Sizing Headlines Cells
Populating UITableView with Dummy Data
+ Good News - Integrating with NewsAPI
5 lectures 34:42
Registering with
Implementing Web Service
Creating the Models
Implementing Category Service to Fetch Articles by Categories
Testing Category Service
+ Good News - View Models
6 lectures 47:30
Understanding the View Models Structures
Implementing CategoryListViewModel
Implementing ArticleViewModel
Displaying Articles in UITableView
Implementing Current Date Header for UITableView
Implementing Category Section Header for UITableView
+ Good News - Displaying News Details
4 lectures 24:18
Understanding the Scenario
Creating the News Details Screen and NewsDetailViewModel
Manually Decoding Article JSON
Displaying News Details
+ Good Cam - Setting Up the Container View Controller
4 lectures 25:29
What we will be building
Understanding the Architecture of the App
Configuring Container View Controller
Adding PhotosFilterViewController as Child Controller
+ Good Cam - Photos Library
5 lectures 37:36
Requesting User's Permission
Retrieving All Photos
Displaying Photos in UICollectionView
Selecting a Photo
Displaying the Selected Photo
  • This course is for intermediate and advanced developers
  • Knowledge of iOS App architecture
  • Xcode
  • Intermediate and advanced knowledge of Swift

Are you a beginner iOS developer and want to take your skills to the next level? Do you have some iOS programming experience but wanted to learn MORE. Are you looking to enhance your skills and become a better developer?

If you answered YES to any of the above questions then this course is for you! For the last few months I have been working on a course which condenses my 8+ years of iOS development experience into 4 apps. This course will teach you how to become a better developer by incorporating design patterns, refactoring, layering and advanced iOS skills.

Welcome to Intermediate and Advanced iOS - Build Real World Apps! I have always believed that the best way to learn is to build a product. In this course you will be working on multiple projects using different technologies and frameworks. Check out the amazing projects you will working on:

High Waters: High Waters app is a crowdsourcing app which allows the users to notify each others of a flooded region. This app can literally save lives! In this app you will learn the following:

  • Integrate MapKit with an iOS App

  • Learn to zoom into user’s current location

  • Create custom annotations

  • Persist information to the Firebase Firestore cloud database

  • MapKit simulation techniques

Good News: Good News app is a news app like Google News designed using MVVM design pattern. The app fetches the latest news from the NewsAPI service and displays it according to their relevant categories. In this app you will learn the following:

  • Designing the interface of the app

  • Configuring and setting up theme of the app using appearance API in iOS

  • Implement a web service layer to fetch news from NewsAPI

  • Consuming JSON and populating models using Swift 4 Codable protocols

  • Implementing View Models to support on screen user interface

  • Creating custom self sizing UITableView cells

  • Utilizing WKWebView to display resources

Good Cam: Good Cam app showcase the same features as Instagram App and is implemented using the view controller containment pattern. It allows users to take a photo and then apply custom filters on the photo. Later the filtered photo is persisted back to the camera roll. In this app you will learn the following:

  • Setting up the app using view controller containment pattern

  • Injecting controllers into parent controller

  • Displaying photos from photo library in a UICollectionView

  • Taking a photo from the iPhone camera

  • Creating and applying custom filters to the photo

  • Saving the filtered photo to the photo library on user’s device

Good List: Good List is a Todo list application with a twist! The complete app is implemented without using storyboards. Good List App perfectly reflects the challenges and flexibility you achieve when you don’t use interface builder or storyboards in your application. In this app you will learn the following:

  • Programmatically creating the user interface of the app

  • Setting layout constraints for user interface elements

  • Sending data between view controllers using delegate design pattern.

Who is this course for?

  • This course is for all levels of developers who wants to increase their skills to become intermediate and advanced developer. Also for developers who wants to learn more about how to how to structure your real world iOS apps.

  • Developers who wants to enhance their existing skills.

Is this course right for me?

Look: If you are still not convinced then check out my 5 star rating on Udemy. I am very active on Udemy forums and I try my best to answer every single question from my students. I also provide lifetime updates for my course and keep a regular schedule for updating the course with new, educational material.

Thank you and enjoy the course!


Who this course is for:
  • This course is for intermediate and advanced developers
  • Students who want to take their skills to the next level