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 solid grasp of fundamental iOS development, including UIKit, Storyboards, navigation, and Swift.
- Practical experience with Xcode.
- Familiarity with object-oriented programming concepts.
Target Audience
- Experienced iOS developers.
- Mobile developers seeking to master advanced techniques.
- Software engineers focused on building 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.