Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Software Development Tools No-Code Development
Business
Entrepreneurship Communication Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certifications Network & Security Hardware Operating Systems & Servers Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Paid Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement & Gardening Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition & Diet Yoga Mental Health Martial Arts & Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Learning Teacher Training Test Prep Other Teaching & Academics
Web Development JavaScript React CSS Angular Node.Js PHP HTML5 Typescript
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Amazon AWS Cisco CCNA CompTIA Security+ Microsoft AZ-900
Microsoft Power BI SQL Tableau Data Modeling Business Analysis Business Intelligence MySQL Qlik Sense Data Analysis
Unity Unreal Engine Game Development Fundamentals C# 3D Game Development C++ Unreal Engine Blueprints 2D Game Development Mobile Game Development
Google Flutter iOS Development Android Development Swift React Native Dart (programming language) Kotlin Mobile App Development SwiftUI
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting Canva InDesign Character Design Procreate Digital Illustration App
Life Coach Training Personal Development Neuro-Linguistic Programming Personal Transformation Life Purpose Mindfulness Sound Therapy Coaching CBT Cognitive Behavioral Therapy
Business Fundamentals Entrepreneurship Fundamentals Freelancing Business Strategy Startup Business Plan Online Business Blogging Leadership
Digital Marketing Social Media Marketing Marketing Strategy Google Analytics Internet Marketing Copywriting Email Marketing Startup YouTube Marketing

DevelopmentMobile DevelopmentSwiftUI

Programming macOS Using SwiftUI - Project Based Learning

Covers MVVM, Networking, Core Data, Maps and much much more.
Rating: 4.7 out of 54.7 (75 ratings)
907 students
Created by Mohammad Azam, Nick Walter
Last updated 5/2022
English
English [Auto]

What you'll learn

  • Building macOS applications using SwiftUI
  • MVVM Design Pattern for SwiftUI applications
  • Persisting using Core Data to SQLite database
  • Consuming JSON API through multiple services
  • Displaying maps, navigation routes and directions overlay

Requirements

  • Some knowledge of SwiftUI framework is recommended
  • Understanding of iOS framework and architecture
  • Understanding of AppKit architecture, including NSViews and View Controllers

Description

SwiftUI was introduced at WWDC 2019 and it has dramatically changed the future direction of iOS, macOS and watchOS applications. SwiftUI provides an easy to use declarative syntax, which allows you to quickly create high performance apps with less code.


In this course, you will learn how to implement macOS applications using SwiftUI framework. This course is a project based course, which means you will learn by building real world applications.


Let’s check out the contents of the course.


Quick Tour of SwiftUI

In this section, you will get a quick tour of SwiftUI framework. This will include different Stack controls, List, Button etc.


State Management in SwiftUI

In this section, you will learn about different state management techniques available in SwiftUI. This includes @State, @Binding, @EnvironmentObject and @Environment.


Understanding MVVM Design Pattern

In this section, you will learn and understand the MVVM Design Pattern. MVVM pattern is the most common pattern used when implementing SwiftUI applications.


Reminders

In this section, you will implement the Reminders application from start to finish. You will use Core Data to persist information into the SQLite database. You will also learn how to set up one-to-many relationships in Core Data.


Maps

In this section, you will implement the Maps application. You will learn how to use NSViewRepresentable to configure and set up maps for macOS applications. You will also learn how to search for close by businesses and display them on the screen. This app also covers how to calculate directions from the user's current location to the destination and how to display an overlay on the map. You will also learn how to implement the preferences screen allowing users to change measurement units.


Stocks

In this section, you will learn how to create the Stocks application using SwiftUI. You will learn how to integrate your app with multiple Web APIs and consume JSON data. The app will also demonstrate how to display graphs and news associated with each stock. You will also learn how to create a lightweight routing engine for your application.


Who is this course for?


  • Developers interested in expanding their skills from iOS to macOS platforms.

  • For developers who want to learn about implementing large applications using SwiftUI framework.

  • Developers who want to move to the senior role by learning advanced techniques for app development.


I had so much fun in creating this course, I consider this to be one of my best courses. Thank you so much for your continuous support. Hope you enjoy the course.

Who this course is for:

  • Developers interested in expanding their skills from iOS to macOS platforms.
  • For developers who want to learn about implementing large applications using SwiftUI framework.
  • Developers who want to move to the senior role by learning advanced techniques for app development.

Instructors

Mohammad Azam
Apple Featured iOS Developer and iOS Instructor
Mohammad Azam
  • 4.6 Instructor Rating
  • 11,218 Reviews
  • 66,636 Students
  • 40 Courses

My name is Mohammad Azam and I have been programming in iOS for the last 10+ years. Currently, I am teaching Full Stack Development at DigitalCrafts. Before joining DigitalCrafts I worked as a lead mobile developer for many large companies including Schlumberger, Baker Hughes, AIG and Valic. Currently, I am a senior developer at Blinds Dot Com, a Home Depot company. Before iPhone development I was leading projects in Microsoft ASP technology. I was also awarded the Microsoft MVP award five years in a row due to my contributions in the community.

I have also published several of my personal apps to the App Store including Vegetable Tree which was featured by Apple as the most beautiful gardening app on the App Store. I am a frequent speaker at local and national conferences and have authored many articles for many different development magazines.

Nick Walter
Mobile and Web Developer - iOS, Android, Django, Python. etc
Nick Walter
  • 4.5 Instructor Rating
  • 54,346 Reviews
  • 265,680 Students
  • 42 Courses

Hi! I'm Nick, and I love to code. About five years ago I decided that I wanted to learn to code, but I had limited access to programming resources, and I was getting frustrated with all of the YouTube videos and online tutorials out there. I experimented, struggled, and definitely failed a lot, but I finally got the hang of it, so I decided that I wanted to change the way that people learned to code, and I started teaching. My experience as an online student has directly influenced my teaching style, because I know what it is like to be in your shoes.

When Apple announced their new programming language, Swift, in 2014, I made my big online teaching debut and created the internet's first Swift course. Since that time, I have become a full-time online instructor and I now have courses not only in Swift, but also in iOS, Android, Django, Kotlin, Python, HTML, Blockchain, etc. I have also created five iOS apps from scratch that are currently live in the App Store and are being used by thousands of users worldwide. 

I love sharing my excitement for coding with my students, and I try to make learning as fun and as easy as possible. Thanks for being part of my coding community!

Top companies choose Udemy Business to build in-demand career skills.
NasdaqVolkswagenBoxNetAppEventbrite
  • Udemy Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Investors
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Accessibility statement
Udemy
© 2022 Udemy, Inc.