This SwiftUI course builds upon the basics of SwiftUI and covers advanced techniques for building complex applications.
This Intermediate SwiftUI course builds upon the basics of SwiftUI and covers advanced techniques for building complex applications. The course also demonstrates how to leverage SwiftUI’s powerful features and integrate it with other frameworks. Let's explore each session in detail.
In this session, you'll be introduced to Combine and how it integrates with SwiftUI to manage complex state. The focus will be on understanding publishers, subscribers, and their roles in SwiftUI apps. You'll also learn about key Combine properties like
@Published and @ObservedObject, and how to combine multiple publishers to handle more complex state.
The video content will guide you through setting up a simple app using Combine to manage state changes and data flow.
Custom view modifiers allow you to create reusable UI components, enhancing modularity in your code. In this session, you'll explore how to extend the View with custom methods that follow common UI patterns. We'll cover best practices to keep modifiers both modular and reusable.
The video will demonstrate how to build a library of custom view modifiers and use them in a real-world application.
Learn when and why you should integrate UIKit components into a SwiftUI project. This session dives into using UIViewControllerRepresentable and UIViewRepresentable to manage UIKit components, and demonstrates how to synchronize data between UIKit and SwiftUI.
In the video, you'll integrate a UIKit element like MapView into a SwiftUI app and synchronize data flow between the two frameworks.
SwiftUI offers great built-in animations, but sometimes custom transitions are necessary to create truly dynamic user interfaces. In this session, you’ll explore using AnyTransition for custom transitions, creating animations with keyframes, and combining multiple animations for a more dynamic effect.
The video content will show how to build a mini-project that uses these advanced animations to enhance the user experience.
The GeometryReader is a powerful tool in SwiftUI that allows you to build responsive layouts that adapt to screen size and orientation. This session will help you understand coordinate spaces and frame calculations for adaptive layouts.
The video will guide you through creating a dynamic, responsive interface using GeometryReader, which adjusts based on screen size and orientation.
Lists and grids are essential for displaying data, especially large datasets. This session covers creating multi-dimensional grids with LazyVGrid and LazyHGrid, optimizing list performance, and customizing list rows with swipe actions.
In the video, you’ll build a feature-rich app that displays dynamic data using advanced list and grid layouts.
Learn how to integrate Core Data into SwiftUI to persist data across app sessions. This session covers setting up a Core Data stack, managing entities, and performing Create, Read, Update, Delete (CRUD) operations directly within your SwiftUI views.
The video will guide you through building a CRUD app using Core Data, showing how to persist data across multiple sessions.
In this session, you’ll explore how to fetch data from remote APIs using URLSession combined with SwiftUI and Combine. You’ll also learn how to decode JSON and handle errors efficiently in SwiftUI views.
The video will demonstrate how to create an app that fetches data from a public API and displays it in a SwiftUI interface with error handling.
SwiftUI simplifies navigation, but for complex multi-screen apps, more advanced techniques are needed. This session covers building apps with NavigationStack, passing data between views with environment objects, and managing deep links and programmatic navigation.
The video will demonstrate how to create a multi-screen app with complex navigation flows.
This session provides a deep dive into using Combine with SwiftUI, particularly focusing on building reactive UIs. You’ll learn to handle asynchronous data streams using Combine publishers, allowing your UI to reflect real-time updates.
The video will showcase a real-time data-driven app, demonstrating how to handle asynchronous updates in SwiftUI using Combine.
Creating reusable components is essential for efficient and scalable app development. In this session, you’ll learn best practices for building reusable SwiftUI components and how to share these components across multiple projects.
The video will guide you through creating a library of reusable UI components and show how to integrate them into different applications.
SwiftUI is not limited to iOS; it can also be used for macOS, watchOS, and tvOS development. This session explores how to adapt SwiftUI code for different platforms, using platform-specific modifiers and controls while sharing as much code as possible across platforms.
In the video, you’ll create a small cross-platform app that runs on iOS, macOS, and watchOS, demonstrating how to share code between platforms while addressing platform-specific needs.
This Intermediate SwiftUI course covers a wide range of advanced topics, from state management with Combine to cross-platform development. By the end of the course, you’ll have the skills needed to build complex and high-performance SwiftUI applications.
Course Cirriculum
[ SESSION 1 ]
....
[ SESSION 2 ]
....
[ SESSION 3 ]
....
[ SESSION 4 ]
....
[ SESSION 5 ]
....
[ SESSION 6 ]
....
[ SESSION 7 ]
....
[ SESSION 8 ]
....
[ SESSION 9 ]
....
[ SESSION 10 ]
....
[ SESSION 11 ]
....
[ SESSION 12 ]
....
Exodai INSTRUCTOR!
Owner and Swift developer!