Skip to content

makhmud-dev/RoadMap-to-become-IOS-developer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

RoadMap to become IOS developer

Development

1 - Базовые знания

  • Фундаментальные типы данных и операции с ними
  • Кортежи, последовательности и коллекции
  • Операторы управления (циклы, условия)
  • Функции и замыкания
  • Опциональные типы данных
  • Классы, структуры, перечисления
  • Объектно-ориентированное программирование
  • Протоколы
  • Протокол-ориентированное программирование
  • Расширения
  • Дженерики (Универсальные типы)
  • Обработка ошибок

2 - Работа с интерфейсом

  • Фреймворк UIKit, в частности классы UIView, UIViewController, UITableView и UICollectionView
  • Фреймворк SwiftUI (декларативный подход)
  • Фреймы и констрейнты (технология AutoLayout)
  • Верстка с помощью Storyboard, XIB
  • Верстка с помощью кода
  • Фреймворк SnapKit (работа с констрейнтами в коде)
  • Фреймворк Core Animation, класс CALayer
  • Фреймворк Core Graphics

3 - Функционирование приложения

  • Процессы и потоки (thread)
  • Objective-C Runtime
  • Жизненный цикл приложения (классы AppDelegate и SceneDelgate)
  • Жизненный цикл вью контроллера

4 - Управление памятью

  • Устройство памяти, области памяти стек и куча
  • Reference type и value type
  • Слабые (weak), сильные (strong) и бесхозные (unowned) ссылки
  • ARC и MRC

5 - Хранение данных

  • Класс FileManager
  • Класс UserDefaults
  • Фреймворк CoreData
  • Фреймворк Realm
  • Фреймворк Firebase

6 - Работа с сетью

  • Класс URLSession
  • Фреймворк Alamofire

7 - Многопоточность

  • async/await (Swift 5.5+)
  • Task, TaskGroup (Swift 5.5+)
  • Акторы (Swift 5.5+)
  • Библиотека Grand Central Dispatch
  • Класс Operation
  • Класс Thread

8 - Реактивное программирование

  • Фреймворк Combine
  • Фреймворк RxSwift
  • Фреймворк ReactiveSwift

9 - Паттерны

  • MVC
  • MVP
  • MVVM
  • VIPER
  • Координаторы
  • Делегирование
  • Одиночка (Singleton)

10 - Менеджеры зависимостей

  • Swift Package Manager
  • CocoaPods
  • Carthage

11 - Технологии Apple

  • Push-уведомления 
  • Universal Links

12 - Другие знания

  • Алгоритмы и структуры данных
  • Принципы SOLID
  • Фреймворк Swinject
  • Система управления версиями Git
  • Мультиплатформенный фреймворк Firebase (авторизация, хранение данных, уведомления и многое-другое)

About

Road Map to become IOS developer

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published