
In this lecture, Mohammad Azam will introduce the contents of the course.
In this lecture, Mohammad Azam will explain the MVC architecture. MVC pattern is the default pattern used by iOS to create applications.
In this lecture Mohammad Azam will cover the opinionated downsides of MVC design pattern.
In this lecture, Mohammad Azam will explain the concept behind MVVM pattern. Azam will explain that although there is nothing wrong with MVC architecture, MVVM can help to better break apps into smaller pieces.
Learn to build a good news iOS app with a dynamic feed of large and small custom cells, each displaying a title and description, implemented using the MVP design pattern.
Register for a free News API developer account to obtain your API key, then use the top headlines endpoint (US) to fetch articles in JSON for your MVVM iOS project.
Set up and configure an iOS user interface using a table view controller and navigation controller, apply large titles, and customize the navigation bar appearance for a polished news list.
Build a web service with get articles that fetches top headlines from news api.org via URLSession dataTask, returning articles through a completion handler.
Create an article view model to display a single article and a parent list view model to manage multiple articles; expose title and description and provide table view data access.
Create a custom self-sizing table view cell to display article title and description using a stack view and multi-line labels, with outlets for title and description.
Shows displaying news in an iOS app with MVVM, fetching articles via a web service, and populating a table view with article view models on the main thread.
Explore building a hot coffee ordering app using the MVVM design pattern, including adding orders, posting to a web API on Heroku, and displaying all orders in the UI.
Design an mvvm-based iOS interface using storyboard, create an orders table view controller and an add order view controller, embed in navigation controllers, and set up navigation and titles.
Learn to test a web api with Postman by posting a new order to a Heroku-hosted service and retrieving it with a get request. Set header to content-type: application/json.
Create a models folder and define an order model with name, email, coffee type, and size, using enums and codable for web service fetching and console display.
Test the web service by fetching coffee orders as an array of orders, decode them, and print the results to the console as a preparation for the view models.
Demonstrates displaying orders in a table view using mvvm, with an order list view model feeding order view models, mapping orders to cells showing type and size.
Master building an add coffee order screen with MVVM in Swift, populating coffee types and sizes via a CaseIterable enum and displaying them in a table view.
Enable single selection of a coffee type in a table view by tapping a row to display a check mark, restricting choices to cappuccino, latte, espresso, or cortado.
Learn to add new coffee orders to a table view using a delegate protocol, pass the order back to the orders list, and update the view model to refresh table.
In this lecture, Mohammad Azam will showcase the Weather App you will be building in the course. After watching this video you will have a better idea of the structure of the course and what you will be building.
In this video, Mohammad Azam will explain the purpose and structure of the weather list screen. The weather list screen is using the MVVM design pattern. Azam will explain how the screen is mapped to the MVVM structure.
In this video, Mohammad Azam will explain the structure of the Add Weather Screen. The add weather screen allows the user to add the city whose weather is calculated using the openweathermap API.
In this video, Mohammad Azam will explain the settings screen and talk about the MVVM design pattern behind the structure of the settings screen.
In this lecture, Mohammad Azam will explain how to setup the view controllers of the app. Azam will explain and setup the basic flow of the application using Storyboards.
In this lecture, Mohammad Azam will explain how to set a common appearance of the app using the appearance API. Azam will explain how to theme your controls so they look same in the whole app.
In this lecture, Mohammad Azam will populate the weather list UITableView control with hard coded data. This is done just to visualize how the app will look when it will be populated with actual data.
In this lecture, Mohammad Azam will demonstrate how to design the add weather screen of the app. The add weather screen of our MVVM app is the simplest screen in the app which consists of a single UITextField.
Explore the OpenWeatherMap API for current weather data, sign up for an API key, and test city requests with unit options for Fahrenheit or Celsius.
Create a models folder and build a weather response using Codable to map the root json to a main weather structure, exposing temperature in kelvin and humidity for decoding.
Create a weather resource and fetch data from a weather API, decode JSON into models with a JSON decoder, and plan to move the service call into view models.
Implement the add weather view model to drive the add screen, construct a city weather URL, fetch and decode data via a weather resource, and return a weather view model.
Explore the starter project to see how the settings screen is wired with a settings bar button and a blank settings table view controller, preparing for Celsius or Fahrenheit options.
Implement a settings view model in mvvm using swift for iOS that exposes celsius and fahrenheit options via a unit enum, with display names and persistence through user defaults.
Demonstrates selecting and persisting a temperature unit (Celsius or Fahrenheit) in a settings table view using MVVM in Swift for iOS, with check marks and a done button updating temperatures.
Using the MVVM pattern in Swift for iOS, switch temperatures between Celsius and Fahrenheit by updating the weather list, converting values, and saving the last unit in user defaults.
Demonstrate view to view model binding in a standalone ui kit example, binding username and password fields to a login view model with a custom binding text field.
Learn view model to view binding in a login flow by updating username and password fields via a dynamic type and closures, with UIKit updates and SwiftUI alternatives noted.
In this lecture, Mohammad Azam will explain the purpose of unit testing. Azam will explain how unit testing can benefit your application and how it can help to catch problems early.
In this lecture, Mohammad Azam will explain how to setup your project. Azam will demonstrate how to add a unit testing project to your existing application.
In this lecture, Mohammad Azam will implement our first unit test. Azam will explain how to get started with unit test and how to use TDD (Test Driven Development) to write your unit tests.
In this lecture, Mohammad Azam will demonstrate how to refactor your unit tests. Azam will introduce the concept of setUp and tearDown methods and how they can be used to write better, cleaner unit tests.
Are you interested in learning how to write iOS apps using MVVM design pattern?
MVVM design pattern allows you to develop applications that are easily maintainable and testable, and now you can learn it from the comfort of your home.. in your own time.. without having to attend class.
My name is Mohammad Azam and I am the creator of many popular online courses including Mastering MapKit in iOS Using Swift and Creating Stickers and iMessages Applications in iOS 10 Using Swift 3, Mastering Micro Services Using JPA, Mastering Server Side Swift Using Vapor, Mastering ARKit for iOS, Mastering Core ML for iOS and more.
I have created over 2 dozens apps and some of my apps were even featured by Apple on the App Store. I have worked with fortune 500 companies as a lead iOS developer and helped them grow their business ten folds.
What’s stopping you from signing up to today?
You don't have enough time: Not a problem at all. We have designed the course so you can learn everything you need to know in less than 4 hours. In fact if you think that the course fell short on delivering topics then we will give you your MONEY BACK.
Here are some of the reviews from our previous courses:
"His course is AWESOME very detail instructions."
"Mohammad Azam has an excellent teaching style which makes it easy & fun to comprehend these Swift features in such a short course & he explains the concepts in more detail & clarity than most instructors. Plus, his videos are well prepared & he's very articulate. I hope he will create more courses."
"Excellent teaching. Just perfect!!!"
Buy this course today and this is what you’ll get.
I will show you how to use MVVM design pattern to build your iOS applications. I will start from the very beginning covering the basics of MVVM design pattern and then dive into advanced concepts like live binding. I will also demonstrate how to implement a web services layer and create a complete app from scratch using MVVM design pattern.
The course is accompanied with all the code sample files.
You will also receive a UNLIMITED support on Udemy forums. I am very active on forums and make sure that every questions is answered.
Can you believe you get all this (and more) for just $195?
"Awesome class for really learning how to setup and implement MapKit in your iOS apps using swift. Def. one of the best classes I've taken on Udemy. Looking forward to more classes offered by Mohammad Azam. A++ class"
Why learn MVVM?
MVVM is the next step towards the future of apps. MVVM allows you to create apps that are easily maintainable and testable.
MVVM allows iOS developers to use their existing skills to create amazing iOS applications.
As the application grows MVVM design allows the developers break the app into smaller components.
Who is this for?
This course is for anyone who wants to take their skills to the next level. MVVM design pattern is an old pattern but it is relatively new in the iOS community. MVVM iOS applications can also help you to earn higher salary since now you know how to write a complete apps which can be tested and updated easily through the use of MVVM design principles.
Is this course right for me?
Look: if you are still not convinced then I urge you to check out my 5 star reviews in other courses. I am a well known developer in the iOS community with a large following. I do a lot of speaking engagements in which I spread knowledge and education.
If you are not satisfied with the course then I offer a 100% REFUND. I am confident that you will enjoy the course and you will utilize the knowledge you learned in this course in your future applications.
What are the requirements?
A Mac Computer
Xcode 10 or above
iOS 12 or above
Basic understanding of the Swift language and the iOS SDK - I'll teach you everything you need to know about MVVM.
What am I going to get from this course?
Create amazing iOS apps using MVVM design pattern
Take your existing iOS skills to the next level
Become a professional app developer, take freelance gigs and work from anywhere in the world
Bored with the same old, same old? Apply for a new job in a software company as an iOS developer