image

Никаких записей курсов — только живое общение

Курсы

Наши курсы

image

TeachMeSkills в Ютубе

Здесь мы публикуем годный контент, подробные разборы и практический опыт учителей

Дистанционный курс — 7 месяцев

iOS разработчик

Научим разработке мобильных приложений на Swift за 7 месяцев

Phone

Свяжемся в течение рабочего дня

Нажимая на кнопку, я соглашаюсь на обработку персональных данных

Идет набор групп

За 8 лет наша школа выпустила более 11500 айтишников, успешно начавших свою карьеру в международных IT компаниях.

Course image

Кем ты станешь?

Освой разработку под iOS с использованием Swift — одного из самых мощных и гибких языков программирования. На курсе ты научишься создавать мобильные приложения для iPhone и iPad, работать с UIKit, SwiftUI, а также интегрировать базу данных и push-уведомления. Получи актуальные знания от экспертов с реальными проектами. Освой востребованные навыки и создай портфолио. По завершении курса мы поможем с трудоустройством, а также предоставим диплом для дальнейшего карьерного роста. Начни обучаться прямо сейчас и меняй свою жизнь в лучшую сторону!. Присоединяйся к обучению на курсе и начинай путь к своей мечте. Преимущества курса: профессиональные наставники, реальные проекты, доступ к эксклюзивным материалам и трендам. Прокачай свои навыки, получи опыт в реальных задачах, развивайся и становись востребованным специалистом. Обучение на актуальных примерах и технологиях, поддержка на всех этапах.

Чему ты научишься?

  • Изучишь язык программирования Swift с нуля и ООП
  • Разработаешь и опубликуешь приложение в App Store
  • Научишься проектировать и анимировать интерфейсы
  • Научишься работать с сетью и хранить данные
  • Станешь востребованным iOS разработчиком
  • Узнаешь способы монетизации мобильных приложений

Зарплата iOS разработчика

Источник данных: HH.ru

700 $ - 1500 $

Junior
Middle
Senior

На рынке не хватает iOS разработчиков

370сейчас ищут iOS разработчика

< >

700 $
Junior
Middle
Senior

Программа курса

Рассчитана на 228 академических часов

Программа была составлена практикующими IT специалистами с многолетним опытом коммерческой разработки для новичков в iOS.

Введение в XCode и SWIFT

Введение. Знакомство с XCode

  • Xcode - основная среда разработки
  • Симуляторы и Playground
  • Настройка проекта

Базовый функционал SWIFT

  • Основные типы данных в Swift
  • Строгая типизация в Swift
  • Переменные и константы
  • Приведение типов
  • Условия и циклы

GIT

  • Основы GIT
  • Идея системы контроля версий и хранения данных в облаке
  • Выбор и установка git-клиента
  • Git flow

Функции и методы

  • Понятие и назначение функции
  • Синтаксис функции
  • Функции, возвращающие значения
  • Замыкания
  • Глобальные, локальные, статические функции и переменные

Опционалы и enum

  • Опционал: его смысл и назначение
  • Развертывание опционала
  • Безопасное извлечение значений из опционала
  • Enum

Коллекции – массив, словарь, кортеж, множество. Дженерики

  • Массив (Array)
  • Словарь (Dictionary)
  • Кортеж (Tuple)
  • Множество (Set)
  • Функции высшего порядка (map, filter, reduce, forEach, compactMap)
  • Дженерики

ООП. Storyboard

ООП. Структуры и классы. Модификаторы доступа

  • Структура
  • Класс
  • Отличие структуры и класса
  • ООП. Основные принципы
  • Модификаторы доступа

Механизм визуализации интерфейса программы - Storyboard

  • Понятие storyboard, назначение, основные задачи
  • UIKit и его основные компоненты
  • Autolayout
  • Констрейнты
  • Создание объектов интерфейса из кода

ViewController

  • UIView и его свойства
  • Жизненный цикл AppDelegate
  • Жизненный цикл ViewController
  • UINavigationViewController
  • UITabViewController

Базовая навигация

Базовая навигация

  • Навигация через segue
  • Навигация через present
  • Работа с несколькими сторибордами

Контейнеры UIScrollView и UIStackView

  • Принципы работы UIScrollView
  • Принципы работы UIStackView

Делегаты и callbacks

  • Делегаты - понятие, назначение
  • Callback (completion block, completion handler)

Коллекции UITableView

  • Реализация UITableView 
  • UITableViewCell
  • UITalbeViewDataSource и UITableViewDelegate
  • Механизм переиспользования ячеек

Коллекции UICollectionView

  • UICollectionView
  • UICollectionViewCell
  • UICollectionViewDelegate и UICollectionViewDataSource
  • UICollectionViewLayout
  • UICollectionViewFlowLayout

Кастомные UI компоненты и xib

  • Кастомные UIView и расширения для View
  • Тени, градиенты, закругление углов
  • Создание кастомных ячеек
  • Создание кастомного UIControl
  • Xib-файлы

Обработка жестов в iOS

  • Класс UITouch
  • Gesture Recognizer
  • Responder Chain
  • Hit testing

Анимация. Solid-принципы

Анимация

  • Анимация UIView
  • Анимация CALayer
  • Lottie анимация
  • Анимация констрейнтов

Ввод текста. Уведомления

  • Работа с UITextField и UITextView
  • UIButton - углубленный разбор
  • Notification - широковещательное уведомление приложения о событии

SOLID принципы

  • SOLID принципы
  • Примеры применения SOLID принципов

Алгоритмическая сложность, хэш

  • Понятие хэша
  • О-большое
  • Алгоритмическая сложность поиска нужного элемента в массиве и словаре
  • Разбор основных задач с собеседований

Attributed Strings. Отображение ошибок. WebKit

Attributed Strings и работа с интерфейсом

  • Attributed Strings
  • Добавление кастомных шрифтов в проект
  • Blur effect для UIView

UIAlertController, UIPickerView, UIImagePickerController

  • Отображение ошибок (UIAlertController)
  • UIPickerView
  • Класс UIImagePickerController

Фреймворк WebKit

  • WKWebView
  • SFSafariViewController

Работа с датами и управление памятью

Работа с датами в SWIFT

  • Основы работы с датами
  • DateFormatter
  • Разбор шаблонов для форматирования дат

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

  • MRC
  • ARC
  • Сборщик мусора

Многопоточность и работа с API

Многопоточность. Введение. Часть 1

  • Threads
  • RunLoop
  • QoS

Многопоточность. Часть 2

  • Синхронизация
  • Mutex
  • Condition
  • Потенциальные проблемы

Асинхронное программирование с async/await

  • Принцип async и await
  •  Параллельные задачи Task
  •  Сравнение с GCD

Многопоточность (Часть 3)

  • Concurrency
  • Grand Central Dispatch
  • Queue
  • Dispatch work item
  • Semaphore

Промежуточный тест на оценку знаний

  • Промежуточный тест на оценку знаний

Работа с API

  • Что такое API и для чего нужен
  • Признаки REST API
  • JSON - основы, создание, развертывание
  • URLSession
  • Сериализация и десериализация данных

Хранение данных, Core Data

Работа с базой данных

Сохранение данных

  • UserDefaults для хранения данных
  • Ограничения UserDefaults
  • FileManager
  • Сохранение кастомных классов

Хранение данных (Core Data)

  • Объекты Core Data
  • Связи между объектами Core Data
  • Создание моделей данных и установка связей между ними
  • Запись / чтение / сортировки и фильтрация объектов

Realm. Работа с базой данных

  • Понятие базы данных
  • Понятие «Объект» и «Связь»
  • Создание моделей
  • Запись данных в базу
  • Выстраивание иерархии моделей

Основы безопасности

Основы безопасности

  • Keychain - защищенное хранилище
  • APNS - уведомления от сервера
  • Создание локальных уведомлений

Паттерны

Паттерны MVC, MVP, VIP

  • Паттерн MVC
  • Как избежать massive view controller
  • Паттерн MVP + Router
  • Паттерн VIP

Паттерн MVVM

  • Класс Bindable
  • Понятие дженериков
  • MVVm-C - MVVm с координатором
  • Понятие модульного приложения, иерархия координаторов

Процесс разработки и локализация

Процесс разработки. Разбор действий разработчика

  • Процесс разработки
  • Работа с JIRA
  • Оценка задачи, принятие в работу
  • Код-ревью, реагирование на замечания
  • Цикл ТОТЕ
  • Интеграция в команду

Локализация. Вызов других приложений. Телефонная книга

  • Основы локализации
  • Адресная книга iOS
  • Открытие других приложений из кода
  • Передача данных в другое приложение

Cocoapods. Геолокация. FireBase

Менеджеры зависимостей. Профайлинг приложения

  • Cocoapods и SPM. Их отличия
  • Использование сторонних библиотек
  • Верстка при помощи Snapkit
  • Профайлинг приложения
  • Swiftgen и swiftlint

Геолокация. Аудио и видео

  • Основы геолокации и источники данных для определения локации
  • Возможная точность определения локации
  • Синтаксис, запуск определения локации
  • Воспроизведение аудио
  • Воспроизведение видео

FireBase

  • Authentication
  • Realtime Database (БД)
  • Cloud Firestore (Хранилище файлов)
  • Crashlytics (Исследование сбоев приложения)

Акселерометр. Гироскоп. Карты

  • Основы отслеживания положения телефона
  • Получение и обработка данных акселерометра
  • Работа с картами (MapKit)
  • Создание тегов и их использование

Монетизация

Монетизация приложения

  • Основные способы монетизации приложения
  • Встроенные покупки
  • Особенности работы с подписками
  • Отображение рекламы в приложении
  • Особенности монетизации Apple

SwiftUI. Combine.

SwiftUI.Основы

  • Возможности и ограничения SwiftUI
  • PropertyWrappers. Доступные возможности:
  • @State
  • @Binding
  • @ObservedObject
  • @ObservableObject
  • @EnvironmentObject
  • @Environment
  • Ограничения обёрток свойств

SwiftUI. Продолжение. Часть 1

  • Сопоставление элементов SwiftUI и UIKit. Разбор каждого из основных
  • Назначение SceneDelegate. Переименование ContentView в RootView. Canvas
  • Работа с таблицей (List). Отображение простого массива
  • Протокол Identifiable

Фреймворк Combine

  • Паблишер (Publisher)
  • Подписчик (Subscriber)
  • Потоки данных
  • Распространение изменений

RxSwift

  •  Observables
  •     Subjects
  •     Биндинг данных
  •     Сравнение с Combine

SwiftUI. Продолжение. Часть 2

  • VStack и HStack как основа UI
  • Система координат
  • Использование изображений в SwiftUI, класс Image, подгрузка системных и собственных изображений
  • Элементы UI:
  • TextField
  • Toggle
  • Stepper
  • Slider

SwiftUI. Навигация

  • Навигация в SwiftUI
  • Создание TabView. Добавление новых табов
  • @State
  • Навигация через NavigationView. NavigationLink
  • Модальное представление окна
  • Передача данных между View

VIPER / CleanSwift

VIPER / CleanSwift

  • Схема архитектуры VIPER / CleanSwift
  • Преимущества и недостатки
  • Пример реализации в реальном проекте

UnitTesting

UnitTesting

  • Принципы TDD
  • Написание юнит-тестов
  • Влияние UnitTesting на разрабатываемые нами продукты

Публикация приложения в Appstore

Публикация приложения в Appstore

  • Необходимые данные для сборки приложения
  • Testflight - среда тестирования приложений
  • Основные требования к приложению при публикации
  • Пошаговая инструкция для публикации приложения

Ретроспектива

Ретроспектива. Прохождение собеседования

  • Ключевые вопросы собеседования
  • Какие бывают заказчики
  • Психологические аспекты собеседования
  • Ретроспектива, ответы на вопросы
  • Вопросы по дипломному проекту

Итоговый тест на проверку знаний

  • Тест

Защита дипломного проекта

Защита дипломного проекта

  • Защита дипломного проекта

Поможем в выборе!

Если у вас есть вопросы о формате или вы не знаете что выбрать, оставьте свой номер:
мы позвоним, чтобы ответить на все ваши вопросы.

  • Звонок
  • Консультация
  • Курсы
Phone

Свяжемся в течение рабочего дня

Нажимая на кнопку, я соглашаюсь на обработку персональных данных

Учебный процесс

  • Упор на практику

    Даем структурированные знания, востребованные сегодня на рынке труда. Никакой воды в обучении: только 15% теории и 85% практики.

    GIF
  • Поддержка и забота

    За каждой группой закреплен опытный аккаунт-менеджер, который помогает в решении актуальных задач / вопросов по телефону, онлайн и лично. А преподаватели всегда готовы помочь на занятии и онлайн в Telegram.

    GIF
  • Помощь в поиске работы

    Учим, как готовиться к собеседованиям и их проходить. Сотрудничаем с IT компаниями по трудоустройству.

    GIF
  • Работа на реальных проектах

    Уже в процессе ты разработаешь реальный проект — твой первый проект в профессиональном портфолио.

    GIF

Преподаватели курса

Учись у луших. Все наши преподаватели - практикующие специалисты в международных IT-компаниях

Фото учителя

Артур

Главный iOS Разработчик в Совкомбанк 8+ лет опыта коммерческой разработки
Фото учителя

Денис

Middle+ iOS Dev в Geek-Solutions 2.5+ лет опыта коммерческой разработки

Ваше резюме после обучения

Фото студента
Должность
iOS разработчик
Зарплата от:
700 $

Профессиональные навыки:

  • Создание полноценных приложений для iOS с использованием всех современных технологий и практик
  • Разработка приложения с использованием типовых архитектурных паттернов, таких как MVVM+C, MVP, MVC
  • Использование таких основных средств разработки, как Git, CocoaPods, SPM
  • Применение в разработке различных фреймворков и модулей, как: Firebase, Realm, Alamofire, Google Maps, MapBox
  • Умение выполнять рефактор, совершенствовать код и перерабатывать архитектуру проекта
  • Понимание и применение полного цикла разработки iOS приложений, от идеи до релиза в AppStore
Cертификаты TeachMeSkills
Подтвердит, что вы прошли курс и станет дополнительным аргументом при устройстве на работу.
Certificate image

Помощь в трудоустройстве

Опытные HR-специалисты отвечают на вопросы, готовят к собеседованию и помогают каждому студенту получить работу мечты.

Раз

image

Рекомендации по составлению портфолио и резюме

Два

image

Подготовка к собеседованию в компаниях-партнёрах

Три

image

Персональные консультации по развитию карьеры

Успешные истории наших выпускников

  • Фото выпускника
  • Фото выпускника
  • Фото выпускника
  • Фото выпускника
  • Фото выпускника
  • Фото выпускника
  • Фото выпускника
  • Фото выпускника

Отзывы выпускников

Дарья
Всем привет! Выпускница курса UXUI Design. Начинала курс без какого-либо бекграунда, т.е. пришла полным нулем. Все было новым, причем каждый раз, каждое занятие. Объем программы обширный, все кейсы были разобраны в полной мере, были получены ответы на все вопросы в процессе обучения. Профессиональное подача материала(отдельное благодарность ментору курса Руслану) и менеджерам школы TeachMeSkills за поддержку и обратную связь.

9 марта 2022

Андрей
Несколько лет работаю в сфере IT и нахожусь в постоянном поиске новых знаний. Курсы UI/UX дизайна выбрал для себя для того, чтобы расширить границы своих профессиональных навыков. В процессе обучения было много практики и теории, материал преподносился в очень доступной форме, поэтому было легко как новичкам, так и тем, кто немного знаком с этим направлением. Что не мало важно, на уроках присутствовала приятная атмосфера и был приятный коллектив. Преподаватель всегда отвечал на любые интересующие вопросы и помогал в решении возникающих трудностей. Полученные знания после окончания данных курсов дают хороший толчок и базу для дальнейшего развития в данном направлении, а так же для применения знаний на практике и при трудоустройстве.

14 марта 2022

Андрей
Всё было круто. Руслан, несмотря на его небольшой возраст, расскажет и объяснит все так, что понял бы даже ребёнок. Отдельно можно выделить атмосферу занятий, которая в нашей группе могла с рабочей на непринуждённую смениться по несколько раз, что помогало не потерять интерес. В общем и целом, курс определенно стоил потраченного на его изучение времени"

9 мая 2022

Наталья
Прошла курс «Автоматизированное тестирование на Java» у преподаватаелей Дениса, который преподавал нам Java с нуля, и Александра Тростянко, который преподавал нам тестирование. Все темы для меня были сложными, так как я ничего не знала о программировании вообще, но благодаря преподавателям и структурированной подачи материала в голове все укладывалось как надо! Я очень довольна своим результатом, так как сразу после курсов я нашла работу 🙂 Большое спасибо, TeachMeSkills 😊

22 февраля 2022

Настя
Это потрясающий опыт и выход из зоны моего комфорта. Классная группа, самый лучший ментор Дмитрий Рак, спасибо тебе за твои Hard skills и энергетику на курсах, умел нас взбодрить после тяжелого трудового дня и настроить на знания, ни капли не пожалела, что отдала своё предпочтение офлайн формату! Спасибо вашей школе за организацию и профессионализм !

27 апреля 2022

Евгения
Благодарю за профессионализм, преподавательский состав, знания, подарочки и очень добрых менеджеров! Работаю уже в двух компаниях год!)

13 апреля 2021

Алеся
Это были офигенные 5 месяцев, спасибо вашей школе и отдельное спасибо за подарочки !!! В феврале начала поиски работы, получила оффер в iTechArt достаточно быстро и планировала выходить.

22 ноября 2021

Виктория
Группа классная, ментор группы Дмитрий Рак просто огонь, с августа работаю в iTeachArt.

26 апреля 2022

Антон
Всё хорошо. Работаю с сентября в компании Fresh lime soft в качестве Front-end developer (React).

24 апреля 2022

Наталья
Все хорошо, уже почти 8 месяцев работаю в айти, знания и навыки, которые получила на курсе просто бесценны!

25 апреля 2022

Анна
Самые крутые курсы в Минске ! Я выбрала направление Python и ничуть не пожалела. Ребята все зачет. Особенно спасибо нашему ментору Николаю. Очень крутой. В первые вижу такую отдачу от человека и помощь. Всем огромное спасибо. Самое классное время. Буду очень скучать))

8 апреля 2021

Аня
Это любоф, два законченных курса. Один ещё в планах, даже на ютубе вашем засвечусь. Что касаемо курса, супер интересно для таких любопытных как я.

16 марта 2021

Стоимость обучения

Полная разовая оплата

105 000₽

Возможен вариант оплаты по банковской рассрочке от 6 до 18 месяцев. Более подробную информацию по программам рассрочки и кредитования можно узнать у менеджеров.

Оплата в рассрочку

35 000 ₽
до начала занятий
35 000
через 3 недели после начала обучения
35 000
через 6 недель после начала обучения

Запись на обучение

Phone

Свяжемся в течение рабочего дня

Нажимая на кнопку, я соглашаюсь на обработку персональных данных