Master Ios Swift App Development In 2025: Uikit & Swiftui
Published 1/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 50.25 GB | Duration: 108h 26m
Published 1/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 50.25 GB | Duration: 108h 26m
Learn to build iOS Swift apps with UIKit and SwiftUI including machine learning, AI, app design and MacOS.
What you'll learn
Learn job relevant SwiftUI and UIKit and qualify as a junior to mid-level iOS developer with real examples
Create a portfolio of 18 production grade apps including an Ecommerce app with Apple Pay, an AI homework assistant app, a social networking app and a chat app
Build aesthetic, clean and beautiful iOS apps through typography, animation, app design and UI/UX best practices
Master how to integrate CoreML machine learning and Vision by building a camera app that detects objects
Master how to train and create custom machine learning models using CreateML
Learn how to create AI powered apps with ChatGPT and Apple Intelligence
Become a successful freelancer on platforms like Fiverr and Upwork
Learn the latest in iOS app development with up to date knowledge on APIs that work in iOS 18
Learn how to build multiplatform apps that work on iPhone, iPad and the MacOS
Requirements
No previous coding or programming knowledge is needed.
An Apple MacBook laptop or iMac preferably running with Apple Silicon
Xcode installed which can be found on the App Store for free
Description
Welcome to the most comprehensive iOS course, covering everything you need for iOS app development. This course was specifically designed to guide you from an absolute beginner to a senior iOS developer. Rather than hop from one iOS course to the next to fill knowledge gaps, you'll find everything you need in one place.This course teaches both UIKit and SwiftUI. UIKit is the established framework used to build iOS apps and remains particularly job-relevant, with an estimated 70% to 80% of companies still requiring it. SwiftUI represents the future of iOS app development and is rapidly gaining adoption, especially among startups. You can choose to learn both frameworks or focus on just one. Whether you're joining this course to land a job that requires UIKit or planning to build your own apps with SwiftUI, this course adapts to your goals.This course is ideal if you've never developed an app before. It begins with the fundamentals and progresses at a steady pace toward more advanced topics. The curriculum I use here has been refined through hundreds of one-on-one mentorship sessions with my students. It features code-thinking techniques illustrated with animations, and emphasizes hands-on app building over theory to keep you engaged.Practice makes perfect. That's why this course includes over 18 production-grade apps you'll build to gain the hands-on experience needed for real-world development. You'll create a diverse range of applications, including an e-commerce app with Apple Pay, a location-based app using the Google API, an AI-powered homework assistant, and much more. By building production-grade apps, you'll learn how to create real-world applications, not just tutorial projects. Each app follows industry-standard coding conventions and design principles.AI and machine learning are the cornerstone of today's modern apps. This course features dedicated modules on AI and machine learning development. You'll learn how to implement existing machine learning models, train your own models, and integrate LLMs like ChatGPT to create AI-enhanced applications.Whether you're aiming to launch your career as an iOS developer, create your own apps, or modernize your development skills, this course provides you with the complete toolkit you need. I've designed every aspect of this course—from the project-based learning approach to the comprehensive curriculum—to transform you into a confident and capable iOS developer. The App Store is waiting for your next great idea, and this course will help you bring it to life. Enroll today!
Overview
Section 1: Welcome
Lecture 1 Course Introduction
Section 2: ––– SwiftUI ––––
Lecture 2 Introduction
Section 3: Head First Into SwiftUI
Lecture 3 Intro to Guess Game
Lecture 4 Button Logic and Style
Lecture 5 Group and Font
Lecture 6 Game Logic Part 1
Lecture 7 Game Logic Part 2
Lecture 8 Game Logic Part 3
Lecture 9 Game Logic Part 4
Section 4: Fundamentals of SwiftUI
Lecture 10 Introduction
Lecture 11 Print and Comments
Lecture 12 Types and Variables Part 1
Lecture 13 Types and Variables Part 2
Lecture 14 Blocks, Scope and Spacing
Lecture 15 Optionals Part 1
Lecture 16 Optionals Part 2
Lecture 17 Arithmetic Operators
Lecture 18 If-Else and Comparison Operators
Lecture 19 Logical Operators
Lecture 20 Other Operators
Lecture 21 Strings and Interpolation Part 1
Lecture 22 Strings and Interpolation Part 2
Lecture 23 Enumerations and Switch
Lecture 24 Functions Part 1
Lecture 25 Functions Part 2
Lecture 26 Arrays
Lecture 27 Dictionaries
Lecture 28 For-Loops and Range
Lecture 29 Named Types
Lecture 30 Structures Part 1
Lecture 31 Structures Part 2
Lecture 32 Classes
Lecture 33 Properties
Lecture 34 Access Control
Section 5: Introduction to SwiftUI
Lecture 35 Introduction to a SwiftUI Project
Lecture 36 @Main and App Instance
Lecture 37 Scene and Window Groups
Lecture 38 Views and Previews
Lecture 39 Opaque Return Types
Section 6: Problem Solving and Thinking When Building Apps
Lecture 40 Decomposition
Lecture 41 Black Box Programming
Section 7: Views and Layout
Lecture 42 Introduction
Lecture 43 VStack, HStack and ZStack
Lecture 44 Size and Position
Lecture 45 Alignment, Spacing and Frame
Lecture 46 Padding and Spacers
Lecture 47 Absolute and Relative Positioning
Lecture 48 Geometry Reader
Section 8: Fundamental Views and Modifiers Part 1
Lecture 49 Introduction
Lecture 50 Text
Lecture 51 SF Symbols
Lecture 52 Images
Lecture 53 Shapes
Lecture 54 Colors
Lecture 55 Buttons
Section 9: State and Binding
Lecture 56 Introduction
Lecture 57 State
Lecture 58 Binding
Section 10: Fundamental Views and Modifiers Part 2
Lecture 59 TextField
Lecture 60 TextEditor
Lecture 61 Order of Modifiers
Lecture 62 Sign Up Form Practice Part 1
Lecture 63 Sign Up Form Practice Part 2
Section 11: What Is SwiftUI?
Lecture 64 What Is SwiftUI?
Lecture 65 SwiftUI vs UIKit
Lecture 66 Should You Use SwiftUI or UIKit?
Section 12: Tap App
Lecture 67 Introduction
Lecture 68 Images and Timer
Lecture 69 Difficulty
Lecture 70 Tap and Present Result
Section 13: Scrambled Words App
Lecture 71 Introduction
Lecture 72 User Interface Part 1
Lecture 73 LetterView
Lecture 74 User Interface Part 2
Lecture 75 ForEach
Section 14: Fundamentals of SwiftUI Part 2
Lecture 76 Extensions
Lecture 77 Protocols
Lecture 78 Equatable
Lecture 79 Hashable
Lecture 80 Identity
Lecture 81 Identifiable
Lecture 82 Opaque Types
Section 15: Scrambled Words App Part 2
Lecture 83 Introduction
Lecture 84 Guessed Letters
Lecture 85 Enumerating Letters
Lecture 86 Letter Model
Lecture 87 Returning a Guessed Letter
Lecture 88 Checking If The Guess Is Right Or Wrong
Lecture 89 Refactor For-In With Map
Lecture 90 Right Or Wrong Alert
Lecture 91 Score
Lecture 92 Question Model
Lecture 93 Small Fix
Lecture 94 Current Active Question
Lecture 95 Moving To The Next Question
Lecture 96 Score View
Lecture 97 Restarting The Game
Section 16: Sheets and Navigation
Lecture 98 Introduction
Lecture 99 Presenting and Dismissing A Sheet
Lecture 100 Sheet Presented With Item
Lecture 101 Presentation Detents
Lecture 102 Fullscreen
Lecture 103 NavigationLink Part 1
Lecture 104 NavigationLink Part 2
Lecture 105 NavigationDestination
Lecture 106 NavigationItem
Lecture 107 NavigationDestination with Hashable Value
Section 17: Git and Github
Lecture 108 Git Repo
Lecture 109 Git Settings
Lecture 110 Staging and Commits
Lecture 111 Switching to a Previous Version
Lecture 112 Branches
Lecture 113 Merge
Lecture 114 Resolving Merge Conflicts
Lecture 115 Stashing Changes
Lecture 116 Introduction to Github
Lecture 117 Creating a Git Repo
Lecture 118 Xcode Github Account and Personal Access Token
Lecture 119 Pushing to Github
Lecture 120 Cloning
Lecture 121 Pulling
Lecture 122 Gitignore and Adding Tap Game to Github
Section 18: MVVM
Lecture 123 Introduction
Lecture 124 Introduction to Starter Project
Lecture 125 Creating a ViewModel
Lecture 126 Moving Logic Into ViewModel
Lecture 127 SignUp ViewModel
Lecture 128 Refactor SignUp PasswordView
Section 19: List and ScrollViews
Lecture 129 Introduction
Lecture 130 Lists Part 1
Lecture 131 Lists Part 2
Lecture 132 ScrollView
Section 20: Income App
Lecture 133 Introduction
Lecture 134 Transaction Row
Lecture 135 Date and Number Formatters
Lecture 136 TransactionView SubView
Lecture 137 BalanceView
Lecture 138 Floating Button
Lecture 139 Navigation Title
Lecture 140 TextFields with Number Formatters
Lecture 141 Using a Picker to Express Transaction Type Options
Lecture 142 Transaction Title TextField
Lecture 143 Create Transaction Button
Lecture 144 Adding a Transaction
Lecture 145 Editing a Transaction
Lecture 146 Editing a Transaction Part 2
Lecture 147 Editing a Transaction Part 3
Lecture 148 Reactive Balance Total
Lecture 149 Refactoring BalanceView with Higher Order Functions
Lecture 150 Deleting a Transaction
Section 21: To Do List
Lecture 151 Introduction
Lecture 152 Thought Process
Lecture 153 To Do List App Solution
Lecture 154 Binding to Array Elements
Lecture 155 Binding to Array Elements In Another View
Section 22: Adaptive Layout
Lecture 156 Adaptive Layout Size Classes
Section 23: iPad Development
Lecture 157 iPad Development
Section 24: MacOS Development
Lecture 158 Building Apps to MacOS
Section 25: Multiplatform Application Development
Lecture 159 Multiplatform
Section 26: AppStorage
Lecture 160 Introduction and SettingsView
Lecture 161 Persisting Order In App Storage
Lecture 162 Persisting Currency In App Storage
Lecture 163 Persisting Minimum Transaction Setting In App Storage
Section 27: Core Data
Lecture 164 Introduction
Lecture 165 Creating the Transaction Entity
Lecture 166 Manually Creating Core Data Classes
Lecture 167 Loading Persistence Stores and Creating View Context
Lecture 168 Saving Transactions
Lecture 169 Updating Transactions
Lecture 170 Deleting Transactions
Lecture 171 Fetching Saved Data
Lecture 172 Refactoring
Lecture 173 Making CoreData Work With Previews
Section 28: SwiftData
Lecture 174 Introduction
Lecture 175 Creating a Swift Data Model
Lecture 176 Adding Codable Conformance to Enums
Lecture 177 Creating a Model Container
Lecture 178 Creating Data
Lecture 179 Reading Data
Lecture 180 Updating Data
Lecture 181 Deleting Data
Lecture 182 Refactor
Lecture 183 SwiftData In Previews
Section 29: Realm
Lecture 184 Introduction
Lecture 185 Installing Realm
Lecture 186 Creating a Transaction Model
Lecture 187 Fetching Data
Lecture 188 Creating a Transaction
Lecture 189 Editing a Transaction
Lecture 190 Deleting a Transaction
Section 30: iCloud
Lecture 191 Introduction
Lecture 192 iCloud Capabilities and Entitlements
Lecture 193 Changing Models
Lecture 194 Testing iCloud
Section 31: Networking Fundamentals
Lecture 195 Introduction
Lecture 196 Custom Backend vs BaaS
Lecture 197 SignUp to Postman
Lecture 198 Exploring Postman and Creating a Workspace
Lecture 199 Sending Our First Request
Lecture 200 Important Parts of a Request
Lecture 201 Exploring JSON In Greater Detail
Lecture 202 API Endpoints In Greater Detail
Lecture 203 Request Types GET and POST
Lecture 204 Response Status Codes
Section 32: Concurrency
Lecture 205 Introduction
Lecture 206 Threads and Queues
Lecture 207 Asynchronous vs Synchronous
Lecture 208 Async/Await
Lecture 209 MainActor
Section 33: Currency Convertor
Lecture 210 Introduction
Lecture 211 Basic UI
Lecture 212 ViewModel
Lecture 213 Currency Menu
Lecture 214 Open Exchange Rates API
Lecture 215 API Request Using Completion Handler
Lecture 216 API Request Using Async/Await
Lecture 217 Codable
Lecture 218 Task Modifier
Lecture 219 Loading and Error Messages
Lecture 220 Converting Currencies
Lecture 221 FocusState
Lecture 222 Conversion Rate
Lecture 223 MainActor
Section 34: Places App
Lecture 224 Introduction
Lecture 225 Starter Project Overview
Lecture 226 Google Maps and API Setup
Lecture 227 API Client Setup
Lecture 228 URL Components
Lecture 229 Fetching Nearby Places
Lecture 230 Place Model
Lecture 231 Decoding JSON
Lecture 232 CodingKeys
Lecture 233 PlacesViewModel
Lecture 234 Introduction to CoreLocation
Lecture 235 Fetching User Location
Lecture 236 Privacy Location Permission
Lecture 237 Handling Response Status Code
Lecture 238 Testing Location Authorization
Lecture 239 Making a Request with Real Location Data
Lecture 240 Result Type
Lecture 241 Type Alias
Lecture 242 Horizontal List
Lecture 243 Displaying Places
Lecture 244 Displaying Places Part 2
Lecture 245 Changing Keyword
Lecture 246 Loading
Lecture 247 Reporting Errors to Users
Lecture 248 Cleanup
Section 35: Cooking Book App (Prototype)
Lecture 249 Introduction
Lecture 250 Introduction to Starter Project
Lecture 251 LoginView Part 1
Lecture 252 LoginView Part 2
Lecture 253 LoginViewModel
Lecture 254 TextField Component
Lecture 255 AuthTextFieldStyle
Lecture 256 Toggle Password Visibility
Lecture 257 Password Component View
Lecture 258 RegisterView
Lecture 259 SignOut
Lecture 260 Recipe Row
Lecture 261 Recipe Row Component
Lecture 262 RecipeDetailView
Lecture 263 Custom Button Style
Lecture 264 AddRecipeViewModel
Lecture 265 Transitioning to @Observable
Lecture 266 Finished Prototype
Section 36: Grids
Lecture 267 Introduction
Lecture 268 Basic Grid
Lecture 269 LazyGrid
Lecture 270 Scroll and Grid Performance
Section 37: UIViewRepresentable
Lecture 271 Introduction
Lecture 272 MakeUIView
Lecture 273 Coordinator
Lecture 274 Binding and UpdateUIView
Section 38: Cooking Book App (with Firebase)
Lecture 275 Introduction
Lecture 276 Firebase Dashboard Overview
Lecture 277 Firebase Installation
Lecture 278 Activating Firebase Authentication
Lecture 279 Creating a User with FirebaseAuth
Lecture 280 Activating Firebase Firestore
Lecture 281 Adding a User to Firebase
Lecture 282 Loading View
Lecture 283 Authentication Error Handling
Lecture 284 Validating Username
Lecture 285 Checking If Username Is Unique
Lecture 286 Using Codable with Firestore
Lecture 287 User In SessionManager
Lecture 288 Persisting Session
Lecture 289 Sign Out
Lecture 290 Login
Lecture 291 Image Options with Confirmation Dialog
Lecture 292 Picking From Photo Library
Lecture 293 Camera
Lecture 294 Camera SwiftUI
Lecture 295 Camera Privacy Permissions
Lecture 296 Testing Camera
Lecture 297 Introduction to Google Cloud Storage
Lecture 298 Uploading Images Part 1
Lecture 299 Uploading Images Part 2
Lecture 300 Uploading Images Part 3
Lecture 301 Saving Recipes Into Firestore Database
Lecture 302 Separate Loading States
Lecture 303 Add Recipe Error Alerts
Lecture 304 Async/Await and Completion Handlers
Lecture 305 Solving the HomeView Preview Bug
Lecture 306 Using Grids
Lecture 307 Fetching Recipes
Lecture 308 Async Image
Lecture 309 RecipeDetailView
Lecture 310 Refactor Fetch Recipe To Use Higher Order Functions
Section 39: ViewBuilders and Custom Modifiers
Lecture 311 About ViewBuilders
Lecture 312 Custom Modifiers
Section 40: Ecommerce App
Lecture 313 Introduction
Lecture 314 NavigationBarView
Lecture 315 Banner
Lecture 316 Featured Heading
Lecture 317 Product Row
Lecture 318 HomeViewModel
Lecture 319 Highly Rated Products
Lecture 320 Vertical Scrolling
Lecture 321 Show Full Catalog Button
Lecture 322 Product Grid View
Lecture 323 Reusable Two Column Grid
Lecture 324 Product Detail View
Lecture 325 TabView
Lecture 326 FavoritesView
Lecture 327 FavoritesManager
Lecture 328 CartView
Lecture 329 CartManager
Lecture 330 Updating Quantity of Items in Shopping Cart
Lecture 331 Add to Shopping Cart Alert (Bindable)
Lecture 332 Displaying Total Shopping Cart Count
Lecture 333 TabManager
Lecture 334 Using Reduce to Get Total Cart Items
Lecture 335 Stepper Increment and Decrement
Lecture 336 Shopping Cart Totals
Lecture 337 Apple Pay Button
Lecture 338 Apple Pay Merchant ID
Lecture 339 Making Payment Summary Items
Lecture 340 Total Payment Summary Item
Lecture 341 Payment Request
Lecture 342 Shipping Method
Lecture 343 Payment Authorization Controller
Lecture 344 Initiating Payment
Lecture 345 Testing Apple Pay and Sandbox Account
Section 41: Chat App
Lecture 346 Introduction
Lecture 347 Prototype Chat
Lecture 348 Data Guide
Lecture 349 App Structure Guide
Lecture 350 Prototype Solution Explained
Lecture 351 Data Solution Explained
Section 42: Machine Learning and AI
Lecture 352 Introduction
Lecture 353 Introduction to CoreML models
Lecture 354 Introduction to Object Detector
Lecture 355 ResNet 50 CoreML
Lecture 356 Image Request Handler
Lecture 357 Image Analysis Request
Lecture 358 Processing the Image Detection Result
Lecture 359 Transfer Learning
Lecture 360 Introduction to CreateML
Lecture 361 Training Data
Lecture 362 Improving Training Accuracy
Lecture 363 Testing Data
Lecture 364 Introduction to Homework AI
Lecture 365 Starter Project Walkthrough
Lecture 366 OpenAI Swift Package
Lecture 367 OpenAI Setup and API Keys
Lecture 368 OpenAI Manager
Lecture 369 Fetching OpenAI Solution
Section 43: ––––- UIKit ––––––-
Lecture 370 Introduction
Section 44: Beginner Swift
Lecture 371 Introduction
Lecture 372 Comments and Print Statements
Lecture 373 Types and Variables - Mutability
Lecture 374 Types and Variables - Naming
Lecture 375 Optionals
Lecture 376 Implicit Optionals and Force Unwrapping
Lecture 377 Optional Binding
Lecture 378 Blocks, Scope and Spacing
Lecture 379 Optional Binding - If Let or Var
Lecture 380 Optional Binding - Guard Let or Var
Lecture 381 Arithmetic Operators
Lecture 382 If Else Comparison Operators
Lecture 383 Logical Operators
Lecture 384 Other Operators
Lecture 385 Strings and Interpolation
Lecture 386 Enumerations and Switch
Lecture 387 Functions Part 1
Lecture 388 Functions Part 2
Lecture 389 Functions Naming
Lecture 390 Dictionaries
Lecture 391 Loops Part 1
Lecture 392 Loops Part 2
Lecture 393 Control Flow
Section 45: Problem Solving and Code Thinking Practices
Lecture 394 Decomposition
Lecture 395 Black Box Thinking
Section 46: Introuction to Xcode
Lecture 396 Opening Xcode
Lecture 397 Navigator, Inspector and Debug Area
Section 47: Views and Layers
Lecture 398 Introduction to Views
Lecture 399 View Fundamentals
Lecture 400 View Attributes
Lecture 401 Storyboards
Lecture 402 IBOutlets and IBActions
Lecture 403 Frame and Bounds
Lecture 404 Tap Counter App
Lecture 405 Tap Counter App Challenge
Lecture 406 Login Form App
Lecture 407 Login Form App Challenge
Lecture 408 Theme Change App
Lecture 409 Theme Change App Challenge
Lecture 410 Student Database App
Lecture 411 Student Database App Challenge
Lecture 412 AppDelegate and SceneDelegate
Lecture 413 CALayer
Section 48: Storyboard Autolyaout
Lecture 414 Introduction
Lecture 415 Horizontal Constraints
Lecture 416 Vertical Constraints
Lecture 417 Inferred Size
Lecture 418 Alignment Constraints
Lecture 419 Intrinsic Content Size
Lecture 420 Content Hugging Priorities
Lecture 421 Content Compression Resistance Priorities
Lecture 422 Multiplier
Lecture 423 Login Form (Autolayout Practice)
Lecture 424 Aspect Ratio
Section 49: Further Swift
Lecture 425 Introduction
Lecture 426 Named Types
Lecture 427 Structures
Lecture 428 Classes: Reference Semantics
Lecture 429 Classes: Subclassing
Lecture 430 Classes: Type Casting
Section 50: Quiz App
Lecture 431 Introduction
Lecture 432 Creating the User Interface
Lecture 433 The Data Model
Lecture 434 Keeping Score
Lecture 435 Moving to the Next Question
Lecture 436 Presenting an Alert If The Answer Is Right or Wrong Part 1
Lecture 437 Presenting an Alert If The Answer Is Right is Wrong Part 2
Lecture 438 Refactoring the Answer Logic
Lecture 439 End of Quiz Final Score Alert
Lecture 440 Refactoring IBActions
Section 51: Adapting to Landscape and Portrait Orientations
Lecture 441 Landscape Orientation Issues
Lecture 442 Size Class Fundamentals
Lecture 443 Adapting the Quiz App to Landscape Orientation
Section 52: Developing for Both iPhone and iPad
Lecture 444 Introduction to iPad
Lecture 445 Adapting the Quiz App to iPad
Lecture 446 Using Trait Collections to Change Appearance
Section 53: ViewController Life Cycle
Lecture 447 Storyboard Life Cycle Part 1
Lecture 448 Storyboard Life Cycle Part 2
Lecture 449 Programmatic Life Cycle
Section 54: Modal Presentation
Lecture 450 Modal Experience
Lecture 451 Page Sheet Part 1
Lecture 452 Page Sheet Part 2
Lecture 453 Fullscreen
Lecture 454 Form Sheet
Lecture 455 Context
Lecture 456 Context Part 2
Section 55: Passing Data
Lecture 457 Segues
Lecture 458 Delegates
Lecture 459 Notification
Lecture 460 Vars
Section 56: Container ViewControllers
Lecture 461 Navigation ViewControllers
Section 57: ScrollViews, TableViews and CollectionViews
Lecture 462 ScrollView
Lecture 463 Keyboard
Lecture 464 TableView DataSource
Lecture 465 ContentList
Lecture 466 Arrays and TableViews
Lecture 467 Sections
Lecture 468 Delegates
Lecture 469 Deleagtes Segue
Lecture 470 TableView
Lecture 471 TableView Cell
Lecture 472 Height
Section 58: ToDoList App
Lecture 473 Introduction
Lecture 474 TitleView
Lecture 475 TableView
Lecture 476 TaskCell
Lecture 477 Self Sizing Cells
Lecture 478 Safe Area
Lecture 479 Add Button
Lecture 480 New Task ViewController
Lecture 481 New Task Model View Xib
Lecture 482 New Task Modal View Class Part 1
Lecture 483 NewTaskModalView Class Part 2
Lecture 484 Instantiating Modal View
Lecture 485 Nibs
Lecture 486 Refactoring Loading Nibs
Lecture 487 Refactor Access to IBOutlets
Lecture 488 LayoutSubViews
Lecture 489 Close Modal View
Lecture 490 Task Model
Lecture 491 New Task with Notification
Lecture 492 TableView UI Changes
Lecture 493 Update Task Part 1
Lecture 494 Update Task Part 2
Lecture 495 Complete Task
Lecture 496 Delete Task
Section 59: Typography
Lecture 497 What Is Typography?
Lecture 498 Best Practice Part 1
Lecture 499 Best Practice Part 2
Lecture 500 Install Custom Font
Lecture 501 Managing Typography Part 1
Lecture 502 Managing Typography Part 2
Lecture 503 ToDoList App Plus Typography Best Practices
Section 60: Colors
Lecture 504 Color Systems
Lecture 505 Color Spaces
Lecture 506 Managing Colors
Lecture 507 Contrast
Lecture 508 ToDoList App Plus Color Best Practices
Section 61: Dark Mode and Light Mode
Lecture 509 Dark Mode Part 1
Lecture 510 Dark Mode Part 2
Lecture 511 Dark Mode 3
Lecture 512 Dark Mode 4
Section 62: Images
Lecture 513 UIImage and Assets Catalog
Lecture 514 Images
Section 63: Animations
Lecture 515 Anatomy of an Animation
Lecture 516 Timing Function
Lecture 517 Types of Animation
Lecture 518 Animations In Practice
Lecture 519 CABasicAnimation Part 1
Lecture 520 CABasicAnimation Part 2
Section 64: Components
Lecture 521 Creating Components
Lecture 522 IBDesignable and IBInspectable
Section 65: Git and Github
Lecture 523 Introduction
Lecture 524 Commits
Lecture 525 Branch and Merge
Lecture 526 Setting Up Github
Lecture 527 Push
Lecture 528 Pull
Lecture 529 License and Readme
Lecture 530 Clone
Section 66: Documentation and Logging
Lecture 531 Create Documentation
Lecture 532 Build Documentation
Lecture 533 Logging
Section 67: Userdefaults
Lecture 534 Userdefaults
Section 68: Realm
Lecture 535 Realm Intro and Setup
Lecture 536 Realm Object Model
Lecture 537 Realm CRUD
Lecture 538 Realm Create
Lecture 539 Realm Read
Lecture 540 Realm Update
Lecture 541 Realm Delete
Section 69: Core Data
Lecture 542 Introduction and Setup
Lecture 543 Refactor CoreData Task to TaskModel
Lecture 544 CoreData Create
Section 70: Core Graphics
Lecture 545 Context State
Lecture 546 Strokes and Fills
Lecture 547 Strokes and Fills Part 2
Lecture 548 Making Arcs
Lecture 549 Making Gradients
Lecture 550 Clipping and Preserving State
Lecture 551 Shadows
Lecture 552 Transformations: Modifying the Current Transformation Matrix
Lecture 553 Transformations: Affine Transforms
Lecture 554 Bar Graph: The Data
Lecture 555 Bar Graph: Labels
Lecture 556 Bar Graph: The Bars
Section 71: CAShapeLayer
Lecture 557 Creating Shapes
Lecture 558 CAShapeLayer Properties
Lecture 559 CAShapeLayer Masks
Lecture 560 CAShapeLayer Transformations
Lecture 561 RingGraph: The Backdrop
Lecture 562 Ring Graph: Progress Layer
Lecture 563 Ring Graph: Gradient Stroke
Section 72: Fitness App
Lecture 564 Starter Project Introduction
Lecture 565 TableView Basic Setup
Lecture 566 Program Table View Cell Xib
Lecture 567 Program Table View Cell Class
Lecture 568 Table View Cell Configuration
Lecture 569 Program and Exercise Models
Lecture 570 Workout View Controller
Lecture 571 Ring View
Lecture 572 Lottie
Lecture 573 Queue Excercises
Lecture 574 Workout Results
Lecture 575 Workout Results Modal View
Lecture 576 Workout Results View Code
Lecture 577 Dismiss Workout Results
Section 73: Functional Programming
Lecture 578 Introduction
Lecture 579 Functions as First Class Citizens
Lecture 580 Closures as First Class Citizens
Lecture 581 Closure Expressions
Lecture 582 Escaping Closures
Lecture 583 Type Alias
Lecture 584 Higher Order Functions
Lecture 585 Functional Programming In Practice
Section 74: Grand Central Dispatch and Memory
Lecture 586 Serial and Global Queues
Lecture 587 Custom Global Concurrent Queues
Lecture 588 Weak and Unowned References
Section 75: Error Handling
Lecture 589 Error Handling
Section 76: Generics and Intermediate Protocols
Lecture 590 Equatable Protocol Part 1
Lecture 591 Equatable Protocol Part 2
Lecture 592 Comparable Protocol
Lecture 593 Hashable Protocol
Lecture 594 Generics Part 1
Lecture 595 Generics Part 2
Section 77: Chat App Plus Firebase
Lecture 596 What Is Firebase?
Lecture 597 Starter Project Introduction
Lecture 598 Installing Firebase
Lecture 599 Attributed String
Lecture 600 Git and Securing Our API Key
Lecture 601 Link to Creating an Account
Lecture 602 Link to Sign In
Lecture 603 Making Sure SignIn TextFields are Visible When Keyboard Shows
Lecture 604 Making Sure Create Account Textfields Not Hidden When Keyboard Appears
Lecture 605 Create Account and Validation
Lecture 606 Saving Username to Realtime Database
Lecture 607 Routing User To Main Screen
Lecture 608 Logout
Lecture 609 Checking If Username Is In Use
Lecture 610 Loading View
Lecture 611 Improved Error Messaging
Lecture 612 Save Username In DisplayName Property of Auth
Lecture 613 Sign In
Lecture 614 ProfileViewController
Lecture 615 ProfileViewController Part 2
Lecture 616 21 Refactor Create Account To Use Completion Handlers
Lecture 617 Main Thread
Lecture 618 Strong Reference Cycles
Lecture 619 Refactor SignInViewController
Lecture 620 UploadViewController
Section 78: Social Networking App
Lecture 621 Starter Project Explanation
Lecture 622 Installing Firebase
Lecture 623 Google SignIn Part 1
Lecture 624 Google SignIn Part 2
Lecture 625 Google SignIn Part 3
Lecture 626 Google SignIn Part 4
Lecture 627 Google SignIn Part 5
Lecture 628 CollectionView Introduction
Lecture 629 UICollectionView Cell
Lecture 630 UICollection View In Detail
Lecture 631 CollectionView DataSource
iOS developers who want to be job relevant,iOS developers looking to learn how to design great looking apps that also deliver incredible user experience.,iOS developers looking to create a portfolio of apps that sets them apart