Содержание пакета (2 курса)
1. Kotlin: полный курс с нуля до Prof + подготовка к собеседованию 4.932
1. Введение
2 урока
👁
4 963
👤
4 963
Открытый
1.1
Что такое программирование?
↗
2 328
2 328
4м
92
Открытый
1.2
Зачем нужны языки программирования?
↗
2 635
2 635
5м
84
2. Базовый синтаксис
18 уроков
👁
24 716
👤
19 715
Закрытый
2.1
Скачиваем среду разработки
↗
1 626
1 626
5м
82
Закрытый
2.2
Первая программа
↗
1 619
1 337
18м
102
Открытый
2.3
Чтение из консоли. Переменные
↗
2 532
1 303
23м
102
Закрытый
2.4
Спецсимволы и шаблоны
↗
1 483
1 199
22м
87
Закрытый
2.5
Целочисленный тип Int
↗
1 410
1 241
18м
90
Закрытый
2.6
Целочисленное деление
↗
1 371
1 091
33м
85
Закрытый
2.7
Условный оператор
↗
1 345
1 102
33м
86
Закрытый
2.8
Условный оператор. Часть 2. Комбинирование
↗
1 310
1 043
38м
77
Закрытый
2.9
Изменяемые переменные
↗
1 283
1 009
17м
72
Закрытый
2.10
Дробные числа
↗
1 235
1 019
25м
72
Закрытый
2.11
Введение в коллекции
↗
1 260
1 016
21м
71
Закрытый
2.12
Циклы Repeat и While
↗
1 239
993
29м
81
Закрытый
2.13
Цикл for и свойство size
↗
1 192
968
24м
66
Закрытый
2.14
Диапазоны Ranges
↗
1 183
985
14м
71
Закрытый
2.15
Целочисленные типы Long Short Byte
↗
1 152
960
18м
66
Закрытый
2.16
If and when are expressions
↗
1 169
945
35м
71
Закрытый
2.17
Символьный тип данных
↗
1 150
942
24м
80
Закрытый
2.18
Do while и split
↗
1 157
936
17м
79
3. Объектно-ориентированное программирование
24 урока
👁
24 041
👤
19 656
Закрытый
3.1
Введение в ООП
↗
1 208
1 208
7м
69
Закрытый
3.2
Создание класса и объекта
↗
1 188
964
23м
72
Закрытый
3.3
Введение в функции
↗
1 142
945
11м
70
Закрытый
3.4
Функции с параметрами
↗
1 127
907
26м
74
Закрытый
3.5
Ключевое слово this и именованные параметры
↗
1 122
884
37м
75
Закрытый
3.6
Введение в конструкторы
↗
1 117
883
22м
72
Закрытый
3.7
Перегрузка конструкторов
↗
1 099
854
36м
75
Закрытый
3.8
Первичный конструктор
↗
1 079
865
17м
72
Закрытый
3.9
Возвращаемый тип функций
↗
1 053
796
65м
73
Закрытый
3.10
Введение в наследование
↗
1 029
797
42м
82
Закрытый
3.11
Upcast, Downcast, Smartcast
↗
1 036
1 036
12м
89
Закрытый
3.12
Введение в полиморфизм
↗
1 010
777
28м
82
Закрытый
3.13
Практика создание бухгалтера. Метод super
↗
996
996
29м
81
Закрытый
3.14
Enum
↗
998
763
34м
86
Закрытый
3.15
Работа с файлами и мутабельными коллекциями
↗
984
690
63м
77
Закрытый
3.16
Ручная сериализация и десериализация
↗
949
681
32м
68
Закрытый
3.17
Удаление элементов из списка
↗
899
636
47м
65
Закрытый
3.18
Рефакторинг
↗
877
877
11м
50
Закрытый
3.19
Контрольная работа
↗
895
895
28м
67
Закрытый
3.20
Инкапсуляция и модификаторы доступа
↗
872
614
34м
64
Закрытый
3.21
Абстрактные классы
↗
848
601
39м
61
Закрытый
3.22
Интерфейсы
↗
838
583
49м
63
Закрытый
3.23
Класс Any и метод toString
↗
836
565
30м
57
Закрытый
3.24
Обзор ООП
↗
839
839
6м
102
4. Погружаемся в Kotlin
15 уроков
👁
11 421
👤
8 343
Закрытый
4.1
Геттеры и сеттеры. Часть 1
↗
874
874
22м
59
Закрытый
4.2
Геттеры и сеттеры. Часть 2
↗
818
558
56м
70
Закрытый
4.3
Single Responsibility Principle
↗
804
560
22м
67
Закрытый
4.4
Рефакторинг и StringBuilder
↗
766
559
28м
64
Закрытый
4.5
Singleton Object
↗
790
556
14м
57
Закрытый
4.6
Backing Field
↗
779
551
22м
63
Закрытый
4.7
Метод copy
↗
760
509
74м
66
Закрытый
4.8
Метод equals
↗
744
506
47м
57
Закрытый
4.9
Метод hashcode. Коллекции Set
↗
732
504
36м
56
Закрытый
4.10
Data Classes
↗
750
506
30м
66
Закрытый
4.11
Дополнение по методу copy
↗
711
711
6м
50
Закрытый
4.12
Nullable Types
↗
724
485
50м
61
Закрытый
4.13
Elvis и Unit
↗
725
496
14м
48
Закрытый
4.14
Try catch
↗
713
488
27м
55
Закрытый
4.15
Nothing
↗
731
480
28м
72
5. Функциональное программирование
15 уроков
👁
10 149
👤
6 785
Закрытый
5.1
Kotlin Serialization
↗
773
498
33м
63
Закрытый
5.2
Получение тестовых данных
↗
701
449
43м
57
Закрытый
5.3
Чистые функции
↗
710
710
8м
60
Закрытый
5.4
Анонимные классы
↗
706
463
41м
69
Закрытый
5.5
Лямбда выражения
↗
710
458
49м
83
Закрытый
5.6
Введение в Generics
↗
683
467
26м
60
Закрытый
5.7
Extension functions
↗
672
445
28м
64
Закрытый
5.8
Inline functions
↗
691
417
27м
66
Закрытый
5.9
Примеры функций высшего порядка
↗
658
427
28м
55
Закрытый
5.10
Функция Let
↗
656
432
21м
59
Закрытый
5.11
Функция Also
↗
644
415
33м
62
Закрытый
5.12
Коллекции Map
↗
650
415
45м
58
Закрытый
5.13
Map для улучшения производительности
↗
627
410
15м
47
Закрытый
5.14
Функции With и Apply
↗
641
395
39м
57
Закрытый
5.15
Функция Run и Method reference
↗
627
384
28м
78
6. Паттерны проектирования
14 уроков
👁
7 973
👤
6 305
Закрытый
6.1
Основы многопоточности
↗
662
396
31м
50
Закрытый
6.2
Singleton. Companion. Init.
↗
625
389
40м
51
Закрытый
6.3
Singleton. Способы реализации
↗
589
589
15м
40
Закрытый
6.4
Singleton. Синхронизация
↗
594
387
25м
58
Закрытый
6.5
Создание GUI
↗
632
632
17м
49
Закрытый
6.6
Observer. Введение
↗
589
353
47м
50
Закрытый
6.7
Observer. Зависимость от абстракций
↗
551
551
14м
41
Закрытый
6.8
Observer. Функциональный интерфейс
↗
534
534
10м
43
Закрытый
6.9
Observer. Интерфейс Observable
↗
541
541
15м
38
Закрытый
6.10
Observer. MutableObservable
↗
532
300
65м
47
Закрытый
6.11
Observer. Backing field и итоги
↗
510
510
7м
40
Закрытый
6.12
Command и BlockingQueue
↗
527
527
21м
40
Закрытый
6.13
Sealed Interface
↗
535
289
55м
39
Закрытый
6.14
Builder
↗
552
307
20м
58
7. Устройство коллекций
24 урока
👁
10 842
👤
10 689
Закрытый
7.1
Junit часть 1
↗
552
552
19м
35
Закрытый
7.2
Junit часть 2. Parameterized Test
↗
499
435
14м
39
Закрытый
7.3
Массивы
↗
501
501
22м
35
Закрытый
7.4
ArrayList. Часть 1
↗
492
492
14м
36
Закрытый
7.5
ArrayList. Часть 2
↗
455
455
16м
35
Закрытый
7.6
ArrayList. Часть 3. Константы и операторы
↗
439
439
14м
37
Закрытый
7.7
Алгоритмическая сложность
↗
457
457
13м
41
Закрытый
7.8
Тестирование исключений. System.arraycopy
↗
433
433
17м
30
Открытый
7.9
LinkedList. Принцип работы
↗
911
911
7м
35
Закрытый
7.10
LinkedList. Реализация
↗
443
443
29м
30
Закрытый
7.11
LinkedList. Двусвязный список
↗
425
425
22м
31
Закрытый
7.12
HashSet. Принцип работы
↗
435
435
9м
30
Закрытый
7.13
HashSet. Реализация. Часть 1
↗
425
425
26м
27
Закрытый
7.14
HashSet. Реализация. Часть 2
↗
409
409
16м
23
Закрытый
7.15
HashSet. Вопросы на собеседовании
↗
412
412
24м
28
Закрытый
7.16
Параметризируем коллекции
↗
401
401
10м
23
Закрытый
7.17
Collections и Iterable
↗
406
406
25м
24
Закрытый
7.18
MutableIterable
↗
386
386
10м
22
Закрытый
7.19
Реализации Set
↗
387
387
11м
25
Закрытый
7.20
Устройство TreeSet
↗
385
385
4м
23
Закрытый
7.21
Неизменяемые коллекции
↗
381
381
14м
23
Закрытый
7.22
Коллекции Map
↗
389
389
24м
27
Закрытый
7.23
Использование Map внутри Set
↗
382
382
14м
23
Закрытый
7.24
Собеседование по теме коллекции
↗
437
348
13м
41
8. Асинхронность и многопоточность
38 уроков
👁
15 197
👤
15 197
Закрытый
8.1
Создание GUI
↗
566
566
10м
38
Закрытый
8.2
Добавление логики и метод String.format
↗
466
466
15м
28
Закрытый
8.3
Механизм callback
↗
474
474
11м
35
Закрытый
8.4
Suspend функции
↗
480
480
14м
43
Закрытый
8.5
Корутины под капотом
↗
490
490
15м
39
Закрытый
8.6
Executor Services
↗
451
451
14м
40
Закрытый
8.7
Structured Concurrency. Часть 1
↗
440
440
12м
42
Закрытый
8.8
Dispatchers Default и Unconfined
↗
426
426
11м
34
Закрытый
8.9
Dispatchers IO и Main
↗
430
430
6м
33
Закрытый
8.10
Job и параллельность
↗
435
435
11м
32
Закрытый
8.11
Async и Deferred
↗
432
432
7м
27
Закрытый
8.12
Jobs Hierarchy
↗
417
417
19м
31
Закрытый
8.13
Исключения. Часть 1
↗
409
409
12м
38
Закрытый
8.14
Исключения. Часть 2. Async
↗
399
399
14м
33
Закрытый
8.15
Отмена корутин
↗
409
409
12м
29
Закрытый
8.16
Suspend Coroutine
↗
398
398
10м
30
Закрытый
8.17
SupervisorJob
↗
411
411
6м
32
Закрытый
8.18
Что такое потоки данных
↗
393
393
13м
37
Закрытый
8.19
Способы создания Sequence
↗
385
385
9м
31
Закрытый
8.20
Начало работы с Flow
↗
395
395
16м
35
Закрытый
8.21
Знакомство с API
↗
409
409
14м
29
Закрытый
8.22
Загрузка данных из сети
↗
378
378
23м
32
Закрытый
8.23
Создание GUI и работа с Regex
↗
392
392
20м
32
Закрытый
8.24
Реактивный стиль
↗
379
379
19м
36
Закрытый
8.25
Channels и Debounce
↗
369
369
12м
32
Закрытый
8.26
Холодные потоки данных
↗
366
366
10м
32
Закрытый
8.27
Горячие потоки данных
↗
368
368
12м
29
Закрытый
8.28
ShareIn
↗
366
366
10м
28
Закрытый
8.29
Buffer и Backpressure
↗
360
360
14м
32
Закрытый
8.30
Screen state as Flow
↗
357
357
15м
30
Закрытый
8.31
MutableStateFlow
↗
358
358
9м
25
Закрытый
8.32
SharedFlow vs StateFlow
↗
350
350
15м
25
Закрытый
8.33
Exceptions in Flow
↗
331
331
12м
22
Закрытый
8.34
Практика работы с исключениями
↗
332
332
8м
26
Закрытый
8.35
Оператор FlowOn
↗
332
332
9м
26
Закрытый
8.36
Наследование CoroutineScope
↗
341
341
13м
30
Закрытый
8.37
Синхронизация корутин
↗
343
343
12м
25
Закрытый
8.38
Channels
↗
360
360
12м
30
9. Kotlin в деталях
18 уроков
👁
6 409
👤
5 748
Закрытый
9.1
Инвариантность и Ковариантность
↗
407
308
20м
34
Закрытый
9.2
Контрвариантность
↗
334
334
14м
25
Закрытый
9.3
Стирание типов
↗
345
345
8м
24
Закрытый
9.4
Reified и Star Projection
↗
337
337
13м
29
Закрытый
9.5
Inline и Non local return
↗
331
331
15м
24
Закрытый
9.6
Crossinline и noinline
↗
323
323
11м
21
Закрытый
9.7
Value classes
↗
329
329
8м
20
Закрытый
9.8
Делегирование свойств
↗
327
327
24м
22
Закрытый
9.9
Делегирование реализации интерфейсов
↗
324
324
14м
27
Закрытый
9.10
Inner и Nested классы
↗
313
313
7м
22
Закрытый
9.11
Destructuring declaration and Infix
↗
317
317
13м
26
Закрытый
9.12
Устройство памяти в Kotlin
↗
341
341
12м
32
Закрытый
9.13
Как работают программы на Java и Kotlin
↗
346
346
6м
35
Закрытый
9.14
Модификатор Internal
↗
332
332
11м
27
Закрытый
9.15
Собеседование
↗
453
292
30м
36
Закрытый
9.16
Тест Kotlin основы
↗
434
236
22м
10
Закрытый
9.17
Тест Kotlin Prof
↗
382
179
33м
15
Закрытый
9.18
Финал
↗
434
434
2м
50
2. Современная Android-разработка с нуля 5.0
1. Введение
10 уроков
👁
4 043
👤
4 043
Закрытый
1.1
Установка среды разработки
↗
489
489
7м
27
Закрытый
1.2
Знакомство с Android Studio
↗
392
392
13м
30
Открытый
1.3
Разбор первой программы. Dp и Sp
↗
1 003
1 003
20м
35
Закрытый
1.4
Modifier
↗
348
348
10м
23
Закрытый
1.5
Row Column Alignment
↗
332
332
20м
24
Закрытый
1.6
Combining Containers
↗
310
310
19м
26
Закрытый
1.7
ARGB модель
↗
301
301
16м
22
Закрытый
1.8
Scaffold и Custom Components
↗
297
297
18м
18
Закрытый
1.9
Material Theme
↗
286
286
13м
20
Закрытый
1.10
Preview и итоги раздела
↗
285
285
14м
24
2. Создаём калькулятор
10 уроков
👁
2 543
👤
2 419
Закрытый
2.1
Создаём тему для калькулятора
↗
294
267
18м
22
Закрытый
2.2
Создание каркаса приложения
↗
273
243
17м
21
Закрытый
2.3
Clip. Дорабатываем UI
↗
259
259
11м
21
Закрытый
2.4
State Рекомпозиции и Логи
↗
258
258
19м
19
Закрытый
2.5
View и ViewModel
↗
260
260
12м
15
Закрытый
2.6
Использование паттерна Команда
↗
247
247
11м
20
Закрытый
2.7
StateFlow и ViewModel
↗
246
217
18м
18
Закрытый
2.8
Добавляем стейты экрана
↗
236
236
13м
15
Закрытый
2.9
Форматирование выражения
↗
233
233
12м
13
Закрытый
2.10
Завершение работы над калькулятором
↗
237
199
14м
12
3. Приложение NotePad
28 уроков
👁
5 235
👤
5 163
Закрытый
3.1
Введение в Clean Architecture
↗
242
242
9м
20
Закрытый
3.2
Domain слой. Часть 1
↗
228
228
18м
19
Закрытый
3.3
Domain слой. Часть 2
↗
215
215
6м
13
Закрытый
3.4
Тестовый Репозиторий
↗
218
218
15м
15
Закрытый
3.5
NotesViewModel. FlatMapLatest
↗
213
213
21м
15
Закрытый
3.6
Подготовка к созданию UI
↗
205
205
11м
8
Закрытый
3.7
RememberScrollState
↗
198
177
19м
13
Закрытый
3.8
LazyLists
↗
198
198
14м
14
Закрытый
3.9
Key и настройка темы
↗
193
182
13м
17
Закрытый
3.10
NotesScreen UI. Часть 1
↗
185
185
23м
15
Закрытый
3.11
NotesScreen UI. Часть 2
↗
183
183
18м
14
Закрытый
3.12
ViewModelScope
↗
186
186
19м
13
Закрытый
3.13
Форматирование даты
↗
180
180
15м
13
Закрытый
3.14
NotesScreen UI. Часть 3
↗
180
164
19м
13
Закрытый
3.15
CreateNoteViewModel
↗
177
177
16м
16
Закрытый
3.16
CreateNoteScreen
↗
173
173
20м
12
Закрытый
3.17
SideEffects
↗
176
176
14м
15
Закрытый
3.18
EditNoteScreen
↗
174
174
17м
10
Закрытый
3.19
Кастомная навигация
↗
176
176
11м
16
Закрытый
3.20
Jetpack Compose Navigation
↗
180
180
14м
17
Закрытый
3.21
Передача параметров в навигации
↗
174
174
11м
15
Закрытый
3.22
Введение в базы данных
↗
171
171
9м
11
Закрытый
3.23
Mapper и Entity
↗
169
169
8м
12
Закрытый
3.24
SQL. Создание DAO
↗
172
148
17м
19
Закрытый
3.25
Context
↗
166
166
9м
13
Закрытый
3.26
Создание базы данных
↗
164
164
10м
12
Закрытый
3.27
NotesRepositoryImpl
↗
166
166
10м
12
Закрытый
3.28
Использование нового репозитория
↗
173
173
8м
18
4. Dependency Injection в Android
10 уроков
👁
1 585
👤
1 520
Закрытый
4.1
Dependency Injection. Введение
↗
175
175
20м
14
Закрытый
4.2
Компонент. Инъекция в свойства класса
↗
165
165
11м
13
Закрытый
4.3
Жизненный цикл зависимостей
↗
162
162
15м
16
Закрытый
4.4
Подключение Hilt
↗
161
146
15м
12
Закрытый
4.5
Module Provides Singleton
↗
158
158
13м
12
Закрытый
4.6
Binds
↗
155
155
6м
12
Закрытый
4.7
Assisted Inject
↗
153
153
14м
16
Закрытый
4.8
Hilt Navigation Compose
↗
149
136
12м
15
Закрытый
4.9
Практика. Добавление Hilt в приложение Notes
↗
147
147
15м
16
Закрытый
4.10
FAQ и подведение итогов
↗
160
123
14м
15
5. Организация локального хранения данных
15 уроков
👁
1 987
👤
1 920
Закрытый
5.1
Сериализация контента
↗
158
128
14м
17
Закрытый
5.2
Подготовка к работе с изображениями
↗
148
148
16м
11
Закрытый
5.3
ActivityResultApi
↗
143
143
17м
14
Закрытый
5.4
Сохранение изображений
↗
142
142
20м
11
Закрытый
5.5
Coil и группировка изображений
↗
133
114
23м
10
Закрытый
5.6
Практика. Экран редактирования заметки
↗
134
134
20м
12
Закрытый
5.7
External и Internal Storage
↗
133
133
19м
11
Закрытый
5.8
Работа с Internal Storage
↗
129
129
14м
10
Закрытый
5.9
Отображение картинок на главной
↗
123
123
14м
11
Закрытый
5.10
Градиенты и строковые ресурсы
↗
123
123
17м
8
Закрытый
5.11
Splash Screen Api
↗
129
111
15м
10
Закрытый
5.12
Нормализация БД
↗
127
127
8м
11
Закрытый
5.13
Embedded Relation Join
↗
120
120
17м
9
Закрытый
5.14
Поддержка новой схемы БД
↗
118
118
12м
13
Закрытый
5.15
Транзакции и Итоги
↗
127
127
11м
15
6. Работа с сетью в Android
29 уроков
👁
3 089
👤
2 899
Закрытый
6.1
Демонстрация приложения News
↗
163
163
2м
13
Закрытый
6.2
Добавление зависимостей
↗
127
127
15м
8
Закрытый
6.3
Domain слой и Database
↗
126
126
27м
9
Закрытый
6.4
Index Room
↗
118
118
4м
9
Закрытый
6.5
Знакомство с API
↗
124
96
13м
9
Закрытый
6.6
Retrofit
↗
122
103
18м
7
Закрытый
6.7
Реализация Репозитория
↗
109
109
22м
7
Закрытый
6.8
SubscriptionsViewModel
↗
103
103
21м
5
Закрытый
6.9
SubscriptionsScreen
↗
101
101
30м
5
Закрытый
6.10
SubscriptionsScreen Часть 2
↗
96
96
13м
5
Закрытый
6.11
Явные и неявные интенты
↗
102
102
12м
4
Закрытый
6.12
Компоненты Android
↗
101
101
5м
4
Закрытый
6.13
WorkManager
↗
98
84
13м
5
Закрытый
6.14
Hilt with Workers
↗
92
92
9м
5
Закрытый
6.15
Domain Settings
↗
91
91
9м
5
Закрытый
6.16
Data Store
↗
94
94
19м
4
Закрытый
6.17
Annotation param и Merged Manifests
↗
91
91
5м
4
Закрытый
6.18
Constraints
↗
94
94
9м
3
Закрытый
6.19
AppStartupManager
↗
97
97
6м
3
Закрытый
6.20
Notifications
↗
97
97
18м
4
Закрытый
6.21
Pending Intent
↗
92
92
8м
4
Закрытый
6.22
Применение настроек для загрузки
↗
91
91
11м
3
Закрытый
6.23
BuildConfig
↗
92
92
10м
4
Закрытый
6.24
SettingsViewModel
↗
98
98
8м
3
Закрытый
6.25
SettingsScreen
↗
101
77
32м
5
Закрытый
6.26
Навигация
↗
112
112
5м
3
Закрытый
6.27
Тест. Часть 1
↗
134
64
12м
0
Закрытый
6.28
Тест. Часть 2
↗
95
60
23м
3
Закрытый
6.29
Финал
↗
128
128
3м
10