Курс: iOS Developer
Для кого этот курс?
Программа создана специально для iOS Developers с опытом работы в сфере разработки мобильных iOS-приложений от 1 года и более.
Что даст вам этот курс?
Научитесь писать выразительный код, который в несколько строчек делает то, на что раньше уходил целый экран
Освоите ключевые особенности Swift 5
Сможете определять целесообразность применения тех или иных архитектурных паттернов
Погрузитесь в нюансы использования Rx: когда он необходим и дает окупаемую выгоду
Особенности программы
Обучение построено исключительно на кейсах из практики разработки приложений в production. Мы будем решать сложные и хардкорные задачи с уровнем качества топовых приложений:
разработаем комплексный и анимированный UI, используя SwiftUI и знания, которые не найти в статьях в интернете
научимся адаптировать UI код для iPadOS и переносить на watchOS, tvOS, macOS платформы
изучим вопрос смешения декларативной и императивной парадигм, Rx паттерны и разработку на Combine
выстроим архитектуру под конкретное приложение: MVVM+S, Clean Swift(VIP) или SOA
научимся редкому навыку комфортного для iOS разработчиков переноса приложения на Android с сохранением 80-90% логики. Использованию кодогенерации, способу развивать себя как T-shaped мобайл инженера
Дополнительно на курсе вы научитесь
применять GCD и решать проблемы многозадачности
работать с протоколами Sequence и Collection
использовать в проектах структуры данных, Generic Type, Associated Types и техники Type Erasure, PATs (Protocol with Associated Types)
грамотно работать с различными способами хранения данных (Core Data, Realm, Keychain, Cache)
применять Dependency Injection (DI) и модуляризации приложений для более комфортной командной разработки и покрытия тестами
на практике изучите все плюсы и минусы известных методологий, подходов и парадигм (Protocol Oriented Programming, ООП, Reactive Programming)
После обучения вы
На профессиональном уровне сможете проектировать сложные UI-компоненты и оптимизировать их производительность, разрабатывать клиент-серверные приложения и оффлайн-режим работы, писать тестируемый unit-тестами код и, конечно, успевать писать тесты.
Необходимое оборудование
Для комфортного изучения технологий iOS-разработки необходим MacBook или другой компьютер на macOS.
Необходимые знания
знание языка Swift (базовые типы, циклы, ветвление)
опыт в разработке под IOS от 1 года
общее представление о Foundation (или Glibc)
опыт работы в Xсode
навыки работы с Git