Top.Mail.Ru
Программа обучения
1 Этап: «Программирование Android Kotlin»
Введение и основы
Результат:
1. Изучили концепцию ООП и функционального программирования
Время прохождения : 2 недели
Содержание:
Знакомство с базовыми понятиями IT через выполнение практических задач
Разбор простых инструментов: Zapier, Dialogflow, Gliffy и другие.
Результат:
Практика:
Содержание:
1. Научились компилировать код на IntelliJ IDEA
1. Проект 1: Приложение калькулятор
Разработка на Java
Время прохождения : 1 месяц
Установка JDK и IntelliJ IDEA. Особенности выполнения кода на Java
Объекты и классы. Создание объектов. Копирование объектов. Внешние библиотеки классов
Операции с числами. Строки, символы, подстроки. Сравнение строк. Регулярные выражения
1 Этап: «Программирование Android Kotlin»
2 Этап:«Программирование Android Kotlin»
3 Этап: «Программирование Android Kotlin»
Классификация языков программирования. Концепции объектно-ориентированного и функционального программирования
Основные синтаксические конструкции и операторы. Переменные. Циклы
Массивы. Списки. Очереди. Поиск и сортировка
2. Проект 2: Задачи на логику
3. Проект 3: 5 мини-проектов по написанию программ на Android
Наследование и полиморфизм. Наследование классов. Доступ к методам и переменным. Абстрактные классы
Коллекции (Java Collections Framework): list, treeset, treemap, queue, hashset, hashmap
2. Изучили инструменты для разработки Zapier, Dialogflow, Gliffy
Примитивы
Обработка исключений. Типы исключений
Многопоточность. Основы работы с потоками
2.Изучили и на практике освоили переменные, типы данных, классы, массивы и циклы
3.На практике изучили исключения и коллекции
4.Изучили особенности сборщика мусора и роботу с памятью
Особенности Java 8: лямбда-функции, Stream API, Date Time API в Java
Java Memory Model и Garbage Collection
Обратная связь
Разработка на Kotlin, Android Studio
Время прохождения : 2 недели
Содержание:
Работа в Android Studio IDE
Структура Android-проекта: Java/Kotlin, XML, .gradle files
Основные синтаксические конструкции и операторы. Условия. Циклы. Функции
Объектно-ориентированное программирование на Kotlin
Классы и объекты
Функции высшего порядка. Исключения. Аннотации
1. Научились компилировать код на Android Studio
2. Научились применять лямбда в Kotlin
1. Создали свой собственный мини-проект на Android Studion
Практика:
Результат:
3. Научились применять inline-функции и extensions в реальных проектах
2. Изучили на практике Companion object и JVMField
3. На практике изучили исключения и коллекции
4. На практике изучили применение Data Class, Inline Class, Enum Class, Sealed Class
5. Companion object и JVMFiel
Лямбда в Kotlin
Создание собственных классов и наследование от других классов
Data Class, Inline Class, Enum Class, Sealed Class
Companion object и JVMField
Лямбда, inline-функции и функции высшего порядка, extension-функции
2 Этап: «Программирование Android Kotlin»
Построение UI интерфейсов
Время прохождения : 2 недели
Содержание:
Android Layouts
Работа с форматом XML
Адаптивный и пользовательский интерфейс
Содержание:
Архитектура UI-слоя приложения. View Binding, Data Binding
Android Views
Material Design, темы и стили
Анимации Pt
Время прохождения : 1 месяц
Архитектура разработки мобильного приложения
Практика:
1.Создали три проекта на Kotlin
1. Научились верстать интерфейсы на XML коде
2. В своем проекте создали несколько экранов со своим собственным UI
1. Создали два проекта на Kotlin
Практика:
Результат:
1. Научились понимать и применять на практике используемую архитектуру написания кода
Результат:
2.Переписали код в существующем проекте с новой архитектурой
3.Мини проект по поиску сотрудников в компании
3. Реализовали собственные анимации перехода
2.Игру крестики нолики
3.Мини проект по прогнозу погоды
Применение AnimatedVectorDrawable
Использование библиотеки Lottie
Explode, Slide, Fade, Transition Framework
Material Motion
RecyclerView (RV)
LayoutManager
Анимирование изменений данных в RecyclerView, поведение swipe-to-action
Coordinator Layout
Активити, фрагмент, диалог
Навигация
Пользовательский ввод. InputMethodService, EditText, TextInputLayout. Взаимодействие EditText с экранной клавиатурой
InputFilter
Использование ToolbarSearchView
ClipboardManager
Автоматизация UI-тестирования. Написание UI-тестов
Custom View: жизненный цикл, анимация
Жизненный цикл отрисовки, onMeasure — onLayout — onDraw
Архитектура UI-слоя приложения. Паттерны
Введение в работу с сетью. HTTP, HTTPS, WebSocket. Postman
Проблема запроса данных в фоне
Broadcast Receiver
DI: основные концепции и сравнение библиотек
Принципы построения архитектуры мобильных приложений. Принципы чистой архитектуры.
Архитектурные паттерны MVVM, MVI, MVP
Плюсы и минусы различных архитектурных паттернов
Применение LifeCycleOwner
Принцип работы Gson
ViewModel: создание модели, обмен данными
Dagger2
Glide, Picasso
Retrofit. Подключение библиотеки, добавление необходимых зависимостей. Retrofit builder
XPath локаторы
Клиент-серверное взаимодействие мобильного приложения и локальное хранилище данных
Результат:
1. Написали собственное приложение с кешированием данных в SQL
Время прохождения: 2 недели
Содержание:
Android Persistence — Shared Preferences, работа с файлами
Базы данных: основы. Реляционные базы данных
Android Persistence, Room
SQL, ACID
Типы данных, поддерживаемых SQLite
Многопоточность, реактивные подходы к построению приложения
Время прохождения: 2 недели
3 Этап: «Программирование Android Kotlin»
2.Научились работать с базой данных и писать запросы SQL
3.Научились писать миграции для БД
Результат:
1. Перепишите свой собственный проект, используя реактивное программирование с LiveData, Coroutines, RxJava
Содержание:
Реактивность, многопоточность с LiveData, Coroutines, RxJava
Архитектура слоя модели, модуляризация
Доменная модель, понятие бизнес-логики и модели из MVP/MVVM
Clean Architecture
Observable, Observer, Subscription
Взаимодействие Data и Domain
Операторы RxJava
Вероятность Memory Leak при использовании RxJava
Варианты создания Observable
Холодные и горячие Observable
Jetpack Architecture Components. ViewModel, AndroidViewModel
Использование ViewModel с LiveData для Data Binding.
Трансформации LiveData
Интеграция Room и LiveData
11
12
13
Интеграция Retrofit и LiveData
14
15
4.На практике изучили особенности многопоточности и проблем многопоточности в БД
CRUD, Foreign key(FK), JOIN, Index, SQLite в Android
Миграция данных и схемы данных (onUpgrade)
Структура БД, основные запросы
Представление о SQL- и noSQL-базах данных
2.На практике освоите, что такое чистая архитектура в Kotlin
3.Поймете особенности решения проблем утечки памяти
После успешного завершения обучения:
Сертификат
Персональный сертификат о прохождении специализации. По запросу на английском языке.
Развитие карьеры и бизнеса:
У вас будет:
У вас будет:
У вас будет:
У вас будет:
Консультации с ментором в течение обучения.
Подборки вакансий, инсайты рынка труда.
Проекты в ваше портфолио.
Реальный опыт на крауд-платформах.