SWIFT Basics
- Basics (Constraints, Variables, Types)
- Basic operators
- Strings and Characters
- Collection Types
- Loops, conditional statements
- Functions
- Closures
- Structure and classes
- Extensions, Protocols, Generics
- ARC
- Algorithms
IOS Basics
- OOP, SOLID
- IOS Architecture & SDK
- UIKit
- Apple UX/UI Guidelines
- Collections
- UI
- Design patterns in IOS
- Passing Data
- Basic UI animations
- Version control: Git, Command line, GUI, Xcode integrated
- Working with dependencies
Project structure & Organization
- Files and classes organization in project
- Constants and configuration files
- Code guidelines & Code styles
Networking
- Client-Server Architecture
- DATA, JSON Serialization
- Error handling
- Best practices, useful techniques
- High Order Functions
- Multithreading
- Loading states, Empty State Views, Temp views
- Debugging intro
- Weak, strong reference types examples
- Auth authentication
- Alamofire
Data Persistence
- Cache
- UserDefaults
- Plists
- Databases theory
- CoreData
- Cloud Storage and Databases
BaaS
- Firebase
Security
- Keychain
Advanced UI
- Fine-tuning design for different screens
- Light/Dark mode
- Working with vector assets
- Dynamic fonts
- Stack views
- Child View Controllers
- Localization support
- Animations
Project Optimization
- Code refactoring
- UI Tweaks
- Performance optimization
- Localization
Pro Mode
- Debugging
- Xcode instruments
- Unit Testing, UI Testing
- Objective-C crash course
- Code Styles and Linting
- CI servers, linters, tools
- Gitflow