[Stepik] Jetpack Compose с нуля (Андрей Сумин)
- Применять Jetpack Compose при разработке приложений
- Работать с анимациями
- Разрабатывать приложения с использованием Kotlin Flow
Jetpack Compose - это современный подход к разработке пользовательского интерфейса. С каждым днем он набирает популярность и все больше работодателей хотят видеть в своих компаниях разработчиков со знанием данной технологии.
В этом курсе мы с нуля изучим все, что нужно, чтобы начать разрабатывать приложения с использованием Jetpack Compose. По большей части этот курс практический, в нем будет очень мало теории и очень много практики.
В процессе прохождения данного курса мы создадим довольно крупное приложение - мобильный клиент VK, в котором будет отображаться лента новостей с возможностью поставить лайк и посмотреть комментарии
*Курс еще находится на стадии разработки, поэтому не все темы сейчас присутствуют в курсе, новые уроки выходят примерно раз в неделю.
Для кого этот курс
Этот курс предназначен для Android разработчиков, как начинающих, так и опытных, которые хотят перейти на новый современный подход к разработке пользовательского интерфейса - Jetpack Compose.
Начальные требования
Для прохождения этого курса обязательно знание языка Kotlin и основ Android-разработки. Важно, чтобы у вас было хотя бы базовое понимание следующих тем: MVVM, Retrofit, Kotlin Coroutines.
Наши преподаватели
Андрей Сумин
Android разработчик в Лаборатории Касперского, автор множества курсов по Android разработке и языкам Java и Kotlin.
После окончания школы я не знал, кем хочу стать, и поэтому вместо учебы решил поработать в сфере торговли. Так я устроился продавцом в магазин электроинструмента. Спустя 3 года работы я стал начальником отдела, и меня стали посещать мысли о том, что я не хочу заниматься этим делом, а уйти куда-то я не мог, так как не имел никакой специальности. В школе мне очень нравилась информатика и меня посетили мысли об изучении программирования. Я поступил в Санкт-Петербургский государственный университет (СПб ГУТ им. Бонч-Бруевича). В нем преподавались очень поверхностные знания в данной области, плюс сильно устаревшие. Тогда я начал изучать программирование самостоятельно, и заметил одну неприятную вещь - практически весь современный и лучший материал был на английском языке, так что перед тем, как стать специалистом в создании приложений для Android мне пришлось выучить английский. Пройдя несколько десятков курсов офлайн и онлайн, проштудировав десятки книг на эту тему, я наконец смог начать реализоваться в новой профессии. Весь процесс занял приличное количество времени – отсюда мое желание помочь таким же людям как я - собрать, обобщить весь материал, структурировать, дополнить теорию практическими упражнениями и провести вас через весь путь от самого начала до создания ваших первых программ. Шаг за шагом вы достигнете поставленной цели.
Спойлер: Программа курса
Введение
01 Для кого этот курс и что будем изучать?
02 Что такое Jetpack Compose. Краткое введение
Основы Jetpack Compose
01 Первое приложение на JC
02 Preview и Column
03 Row, Box, Modifier
04 Instagram Profile Card. Создание шаблона
05 Card
06 Dark-Light Themes
07 Text
08 Image
09 Порядок modifier-ов
10 Завершение работы над InstagramProfileCard
11 VkNewsClient. Создаем шапку поста
12 VkNewsClient. Дорабатываем карточку поста
Material Components
01 Введение в Material Components
02 Scaffold и BottomNavigation
03 State и рекомпозиция
04 FAB и SnackBar
State и работа в VIewModel
01 Рекомпозиция
02 Добавление VIewModel в InstagramProfileCard
03 Делегаты
04 Слушатели клика
05 Добавление ViewModel в VkNewsClient
06 LazyColumn
07 LazyRow, LazyVerticalGrid
08 Swipe to dismiss
09 Добавляем LazyColumn в VkClient
Навигация в Jetpack Compose
01 Навигация без использования библиотек
02 Jetpack Compose Navigation
03 Исправляем баги в навигации
04 Рефакторинг навигации. RememberNavigationState
05 Создание экрана комментариев. Часть 1
06 UDF и создание стейта
07 Навигация на экран комментариев
08 Рефакторинг VIewModels
09 Передача параметров во вью-модель. ViewModelFactory
10 Nested Graph Navigation
11 Fix navigation bugs
12 Передача параметров в JetpackNavigation. Часть 1. Передача Id
13 Передача параметров. Часть 2. Navigation Types
14 Передача параметров. Часть 3. Parcelable, Json, Custom Nav Type
ActivityResultApi
01 Deprecated onActivityResult
02 ActivityResultApi
03 ActivityResultApi в Jetpack Compose
Работа с VK API
01 Авторизация через VK SDK
02 SideEffect и LaunchedEffect
03 Login Screen
04 Refactoring и хранение токена
05 Загружаем данные
06 Дорабатываем UI
07 Реализация добавления/удаления лайков
08 Подгрузка данных во время скролла
09 Добавление состояния загрузки и реализация удаления элементов
10 Реализация экрана комментариев
Coroutine Flow
01 Введение в Coroutine Flow
02 Flow Builders
03 Flow builder and terminal operators
04 Операторы жизненного цикла Flow
05 Map Flow to LiveData
06 AsLiveData часть 2. OnCompletion
07 Использование Flow на Ui-слое
08 Холодные Flow
09 Горячие Flow. MutableSharedFlow
10 Практика MutableSharedFlow
11 Промежуточные и кастомные операторы
12 StateFlow
13 Backpressure и buffer
14 Буфер в горячих flow
15 Операторы ShareIn и StateIn
16 Exception Handling
Практика Compose в приложении VK
01 Practice in VkNewsClient
02 Exception handling in VkNewsClient
03 Coroutine Flow in MainViewModel
04 Refactoring. Clean Architecture
05 Dependency Injection in NewsFeedClient
06 Dependency Injection VkNewsClient Part 2
07 Immutable and recomposition
08 Анимации часть 1. AnimateAsState
09 Анимации часть 2. Animation Spec
10 Анимации часть 3. Animated Content
Custom Views
01 Работа с Canvas
02 Draw Path
03 Detect Gestures
04 Обзор приложения Terminal
05 Реализация загрузки данных
06 Рисуем график
07 Масштабирование
08 Добавление скролла и рисование свечей
09 DerivedStateOf
10 Custom Saver
11 Remember terminal state
12 Path Effect
13 Draw text
14 Refactoring and bug fix
15 Assist Chip. Time Frames
16 Time Delimiters
17 Продолжение следует
https://privatelink.de/?https://stepik.org/course/125685/