Program

Mobile Development / IOS Advanced

The Advanced IOS Mobile App Development course is designed for IOS Developers who would like to advance their career and acquire new skills required for Middle IOS Developers. The course students will deal with Application Architecture, SwiftUI and Multitasking, gain intensive practical experience of building complex and animated UI, application architecture, and solving multitasking problems. We recommend the course for Developers with 1+ years of experience in IOS Mobile development. The tuition fee for IOS Mobile Development professional level is 2450 AZN.

Application to the program is currently not active
Start date

November 2022

Duration

3, 3.5 Months

Group size

25 Students

Schedule

III and VI days of week

Admission requirements
Expectation

Readiness for intensive training

Language skills

Knowledge of English at least Intermediate level

Requirement

Knowledge of the Swift programming language Skills with Git Working knowledge of Xcode At least 1 year experience in IOS development; IOS/MAC personal computer or a laptop

Age

18 years and older

Upon the course completion you will::

Learn how to apply GCD and solve multitasking problems

Confidently use data structures, Generic Type, Associated Types and Type Erasure techniques, PATs (Protocol with Associated Types) in projects

Work with Sequence and Collection protocols

Have practical experience of applying the well-known methodologies, approaches and paradigms (Protocol Oriented Programming, OOP, Reactive Programming)

Apply Dependency Injection (DI) and application modularization for more comfortable team development and test coverage

Acquire skills of working with various methods of data storage

Program

Mobile Development / IOS Advanced
9

Number of modules

Designing UI Declaratively with SwiftUI. What is the difference between UIKit and SwiftUI

SwiftUI List, List with Custom Layout, Hosting ViewControllers

Using NavigationView, TabView. Creating Your Own Navigation Stack

Creating a Custom Shape, SwiftUI Drawing and Animation API

Displaying structured data, List, paging, custom components on UIViewRepresentable

Unusual Swift type system, data structures, Generics

Protocol Oriented Programming (POP), SOA, modularization, architectural Rx patterns: Flux/Redux

MVx, VIP, architectural pattern analysis. SOLID, GRASP, Coupling/Cohesion principles.

Sequences and collections, asymptotic analysis: O(1), O(N), O(N*log(N)), O(n^2)

Using the full power of String: StringInterpolation, Expressible. regional formats.

Multitasking Problems and How to Solve Them, GCD

Internals of GCD(libdispatch), OperationQueue

Async/Await, Tasks, Groups

Actor, @MainActor, Global actors, Distributed actor (socket example)

GraphQL

gRPC, AppSecurity

Socket.io, WebSocket and other sockets for chats and instant updates

SQLite, caching methods, Files, Comparison of CoreData and Realm

Security: OAuth 2.0, Keychain and API key obfuscation, SSL Pinning

CoreML, CreateML, TensorFlow using trained neural network models

CoreML: Getting models with AutoML Vision and using them on the device

XCTest, UITest, fastlane and CI code testing

iOS Life Cycle Management: Environment, Platform evaluation, submitting feedback, Rollout preparation

Submitting a project