Course Outline
Architecture and Advanced Components
- Architecture patterns: MVVM (practical introduction)
- Advanced UI state management with @State and @ObservedObject
- Navigation with UINavigationController and Coordinators
- Hands-on: Refactoring project architecture
Concurrency and Asynchronous Operations
- Grand Central Dispatch (GCD) for async tasks
- Using async/await in Swift
- Main thread vs. background threads
- Hands-on: Implementing async operations in project
Advanced Data Persistence
- Core Data for local persistence (basic CRUD)
- UserDefaults for simple data
- Hands-on: Data persistence in project
Testing and Code Quality
- Unit testing with XCTest
- UI testing with XCUITest
- Static code analysis tools (SwiftLint)
- Hands-on: Implementing basic tests in project
Integration and Optimization
- Consuming RESTful APIs with URLSession and Codable
- Working with JSON
- UI and battery performance optimization basics
- Hands-on: API integration and performance tuning
Summary and Next Steps
Requirements
- A robust grasp of fundamental iOS development concepts (including UIKit, Storyboards, navigation flows, and Swift).
- Practical experience with Xcode.
- Understanding of object-oriented programming principles.
Target Audience
- Seasoned iOS developers.
- Mobile developers seeking to master advanced methodologies.
- Software engineers dedicated to constructing scalable, high-performance iOS applications.
Testimonials (2)
The way of transferring knowledge and the knowledge of the trainer.
Jakub Rekas - Bitcomp Sp. z o.o.
Course - Machine Learning on iOS
He's an experienced trainer with a real life experience in the topic he was teaching. That led the course to cover the most important topics which interests any developer working in the field, and small details would be easily overseen if he was not working in this platform. Moreover, he was giving the course using the latest versions of is and Swift (10 \ 3) and that is a huge advantage to be adapting such new technology in short time.