IOS Development with Swift UI

Learn the core concepts of iOS development using Swift UI and Xcode. This course covers Swift UI syntax, UI elements, data storage, server communication, and advanced features like push notifications and security.

Objective

  • Learn Swift UI syntax, data types, and control flow.
  • Develop iOS applications using Xcode.
  • Implement UI elements and gestures in iOS apps.
  • Work with local storage and JSON data in Swift.
  • Communicate with web services and handle concurrency.
  • Deploy iOS applications to the App Store.

Curriculum

Introduction to Xcode

  • Introduction to Xcode and Overview
  • Install Xcode
  • Using Xcode Tools
  • Xcode’s setting
  • First Application, Action, Outlet, Project Overview
  • Xcode Project
  • Connection Outlet
  • Connection Action
  • Project Settings

Introduction to Swift

  • Swift Overview
  • Swift Concept
  • Understanding Playground

Language Syntax

  • Program Structure
  • Syntax of Swift

Constants, Variables, Data Types, Optional, and Operators

  • Defining constants and variable
  • Data Types
  • Operators

Collection and Cocoa Data Type

  • Array
  • Set
  • Dictionary
  • Tuples
  • NSNumber
  • NSString
  • NSArray
  • NSDictionary

Control Flow Structure

  • Decision Making
  • Loop

Object-Oriented Programming (OOP)

  • Classes and Structures
  • Object
  • Initialization
  • Properties
  • Methods
  • Inheritance
  • Encapsulation

Function and Closure

  • Function
  • Closure

Protocol, Extension, Enumeration

  • Protocol
  • Extension
  • Enumeration

Generics and Memory Management

  • Generics
  • Memory Management

Optional Types

  • Optional
  • Optional Chaining

Safe Code and Error Handling

  • Errors
  • Throwing Errors
  • Catching Errors

structure of a SwiftUI

  • What does @main use for ?
  • What is ContentView
  • What is window group
  • Understanding about App And Body

View,View LifeCycle

  • Text
  • Image
  • Color View
  • Button
  • View LifeCycle

Compose Views V1 : Navigation

  • NavigationLink
  • UI Navigation Bar Items
  • Split View
  • Page View
  • Tab View
  • Tab Item
  • Alert
  • Sheet
  • Action Sheet
  • Popover
  • Modal View
  • Context Menu

Compose Views V2 : Container Views

  • Type of Stack
  • Group
  • Scorll View
  • List
  • Section
  • Forms
  • Identifiable
  • Disclosure Group
  • UI View Representable
  • Lazy VGrid and Lazy HGrid

Compose Views V3 : Layout System

  • Padding
  • Divider
  • Spacer
  • .frame()
  • Flexible Frames
  • .edgesIgnoreSafeArea()
  • Geometry Reader
  • Alignment
  • Layout Priority
  • Offset
  • Z Index
  • Background
  • Overlay
  • Clipped
  • Clip Shape
  • Corner Radius
  • Preferences

Device specific

  • Size Classes
  • Accessibility
  • Interface Orientation
  • Dark mode

View Modifier, Custom View Modifiers, Design System

  • Border
  • Shadows
  • Button Style
  • Custom Font, Dynamic Type
  • Picker
  • Gradient, Blur, Opacity, Brightness, Saturation, Grayscale, Contrast, Color Multiply

UI Interaction, User Input

  • UI Controls
  • Gestures
  • Drag and Drop

State Management

  • @State
  • @Binding
  • @ObservedObject
  • @StateObject
  • @Environment
  • @EnvironmentObject

Third Party Libraries

  • Swift Package Manager
  • Facebook Library
  • Google Maps Library
  • Gmail Login Library

Firebase

  • Firebase Cloud Firestore
  • Firebase Cloud Storage
  • Firebase Cloud Messaging
  • Firebase Authentication

iOS Local Storage and Localization

  • User Defaults
  • Core Data
  • Localization

Working with JSON Data in Swift

  • Parsing JSON Document
  • Creating JSON Document
  • Codable

Aerver Communication Array

  • Web Service API
  • URL
  • URLRequest
  • URLSession
  • Alamofire

Concurrency

  • Async / Await

Push Notification Array

  • Local Notification
  • Remote Push Notification
  • OneSignal

AVKit

  • Music Player
  • Video Player

AVFoundation

  • Cameras and Media Capture

iOS Security

  • Keychain
  • iOS Biometric Local Authentication
  • Data Encryption and Decryption

Development Tools

  • Fastlane
  • Swiftlint

Notification Center

  • Observer

iOS Architecture Design Pattern

  • MVP
  • MVVM

Source Code Version Control with Xcode

  • Xcode Source Code Version Control with Git

App Store Submission

  • Apple Developer Program
  • TestFlight
  • App Store Connect
  • Transporter