Enrollment closed
Native <br>IOS

Native IOS Course


Duration of lecture
3 hours
Duration of education (Mon,Wed,Fri)
3,5 months
Duration of paid internship (5 days/week, 8 hours/day):
2.5 months
* The program provides the possibility of additional classes on Saturday and Tuesday, the final schedule will be sent to the applicants, who get enrolled in said program.

Course description

The course is designed for people who want to commit their careers to develop mobile applications on the iOS platform. Apple is well known for its vastly popular iOS operating system, hence learning to develop applications for said platform allows you to progress greatly as an IT specialist as well as to work on interesting projects.

The program is aimed to study iOS programming from scratch and covers the basics of the SWIFT programming language, along with its architecture and project design.


Students will be developing 3 projects during the course, based on which the judging committee determines which graduates are selected for further study/internship.

The projects cover all the material that is learned during the previous modules and allow to consolidate the acquired knowledge by practicing.


During the educational process, students must complete homework assignments and academic projects, based on which the judging committee grades their practical skills and knowledge, as well as teamwork capabilities.

Course structure

SWIFT Basics

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

  • 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


  • 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


  • Firebase


  • 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

What do
students get

Native <br>IOS
  • Basics of SWIFT programming
  • The main trends in the development of mobile applications and recommendations on optimizing them
  • The skills of using UI Kit and creating mobile applications design
  • Cloud services and database management skills
  • The skills of creating your own application for iPhone and iPad, it's testing
  • Teamwork skills
Enrollment closed
Fill in the form