Это пробный урок. Оформите подписку, чтобы получить доступ ко всем материалам курса. Премиум

  1. Урок 1. 00:03:57
    1.1.1 Что такое программирование
  2. Урок 2. 00:05:28
    1.1.2 Зачем нужны языки программирования
  3. Урок 3. 00:05:18
    1.2.1 Скачиваем среду разработки
  4. Урок 4. 00:13:50
    1.2.2 Первая программа
  5. Урок 5. 00:17:24
    1.2.3 Чтение из консоли. Переменные
  6. Урок 6. 00:11:25
    1.2.4 Спецсимволы и шаблоны
  7. Урок 7. 00:15:59
    1.2.5 Целочисленный тип Int
  8. Урок 8. 00:09:07
    1.2.6 Целочисленное деление
  9. Урок 9. 00:12:56
    1.2.7 Условный оператор
  10. Урок 10. 00:21:50
    1.2.8 Условный оператор. Часть 2. Комбинирование
  11. Урок 11. 00:14:05
    1.2.9 Изменяемые переменные
  12. Урок 12. 00:17:08
    1.2.10 Дробные числа
  13. Урок 13. 00:12:53
    1.2.11 Введение в коллекции
  14. Урок 14. 00:19:49
    1.2.12 Циклы Repeat и While
  15. Урок 15. 00:15:58
    1.2.13 Цикл for и свойство size
  16. Урок 16. 00:08:53
    1.2.14 Диапазоны Ranges
  17. Урок 17. 00:14:05
    1.2.15 Целочисленные типы Long Short Byte
  18. Урок 18. 00:18:26
    1.2.16 If and when are expressions
  19. Урок 19. 00:17:21
    1.2.17 Символьный тип данных
  20. Урок 20. 00:11:18
    1.2.18 Do while и split
  21. Урок 21. 00:06:33
    1.3.1 Введение в ООП
  22. Урок 22. 00:20:32
    1.3.2 Создание класса и объекта
  23. Урок 23. 00:09:22
    1.3.3 Введение в функции
  24. Урок 24. 00:11:35
    1.3.4 Функции с параметрами
  25. Урок 25. 00:23:33
    1.3.5 Ключевое слово this и именованные параметры
  26. Урок 26. 00:14:17
    1.3.6 Введение в конструкторы
  27. Урок 27. 00:15:04
    1.3.7 Перегрузка конструкторов
  28. Урок 28. 00:13:34
    1.3.8 Первичный конструктор
  29. Урок 29. 00:18:47
    1.3.9 Возвращаемый тип функций
  30. Урок 30. 00:20:30
    1.3.10 Введение в наследование
  31. Урок 31. 00:11:53
    1.3.11 Upcast, Downcast, Smartcast
  32. Урок 32. 00:15:22
    1.3.12 Введение в полиморфизм
  33. Урок 33. 00:29:00
    1.3.13 Практика создание бухгалтера. Метод super
  34. Урок 34. 00:25:17
    1.3.14 Enum
  35. Урок 35. 00:25:29
    1.3.15 Работа с файлами и мутабельными коллекциями
  36. Урок 36. 00:18:12
    1.3.16 Ручная сериализация и десериализация
  37. Урок 37. 00:23:41
    1.3.17 Удаление элементов из списка
  38. Урок 38. 00:10:41
    1.3.18 Рефакторинг
  39. Урок 39. 00:27:41
    1.3.19 Контрольная работа
  40. Урок 40. 00:17:18
    1.3.20 Инкапсуляция и модификаторы доступа
  41. Урок 41. 00:14:25
    1.3.21 Абстрактные классы
  42. Урок 42. 00:26:39
    1.3.22 Интерфейсы
  43. Урок 43. 00:10:56
    1.3.23 Класс Any и метод toString
  44. Урок 44. 00:06:29
    1.3.24 Обзор ООП
  45. Урок 45. 00:22:06
    1.4.1 Геттеры и сеттеры. Часть 1
  46. Урок 46. 00:16:01
    1.4.2 Геттеры и сеттеры. Часть 2
  47. Урок 47. 00:15:46
    1.4.3 Single Responsibility Principle
  48. Урок 48. 00:23:56
    1.4.4 Рефакторинг и StringBuilder
  49. Урок 49. 00:10:05
    1.4.5 Singleton Object
  50. Урок 50. 00:14:06
    1.4.6 Backing Field
  51. Урок 51. 00:15:19
    1.4.7 Метод copy
  52. Урок 52. 00:17:13
    1.4.8 Метод equals
  53. Урок 53. 00:22:22
    1.4.9 Метод hashcode. Коллекции Set
  54. Урок 54. 00:15:51
    1.4.10 Data Classes
  55. Урок 55. 00:05:48
    1.4.11 Дополнение по методу copy
  56. Урок 56. 00:14:26
    1.4.12 Nullable Types
  57. Урок 57. 00:08:25
    1.4.13 Elvis и Unit
  58. Урок 58. 00:17:37
    1.4.14 Try catch
  59. Урок 59. 00:13:03
    1.4.15 Nothing
  60. Урок 60. 00:25:54
    1.5.1 Kotlin Serialization
  61. Урок 61. 00:21:48
    1.5.2 Получение тестовых данных
  62. Урок 62. 00:07:56
    1.5.3 Чистые функции
  63. Урок 63. 00:22:33
    1.5.4 Анонимные классы
  64. Урок 64. 00:15:30
    1.5.5 Лямбда выражения
  65. Урок 65. 00:16:09
    1.5.6 Введение в Generics
  66. Урок 66. 00:14:40
    1.5.7 Extension functions
  67. Урок 67. 00:17:52
    1.5.8 Inline functions
  68. Урок 68. 00:10:12
    1.5.9 Примеры функций высшего порядка
  69. Урок 69. 00:16:21
    1.5.10 Функция Let
  70. Урок 70. 00:11:31
    1.5.11 Функция Also
  71. Урок 71. 00:23:46
    1.5.12 Коллекции Map
  72. Урок 72. 00:07:46
    1.5.13 Map для улучшения производительности
  73. Урок 73. 00:18:12
    1.5.14 Функции With и Apply
  74. Урок 74. 00:08:02
    1.5.15 Функция Run и Method reference
  75. Урок 75. 00:16:20
    1.6.1 Основы многопоточности
  76. Урок 76. 00:25:34
    1.6.2 Singleton. Companion. Init
  77. Урок 77. 00:14:45
    1.6.3 Singleton. Способы реализации
  78. Урок 78. 00:19:33
    1.6.4 Singleton. Синхронизация
  79. Урок 79. 00:17:03
    1.6.5 Создание GUI
  80. Урок 80. 00:25:53
    1.6.6 Observer. Введение
  81. Урок 81. 00:14:14
    1.6.7 Observer. Зависимость от абстракций
  82. Урок 82. 00:10:25
    1.6.8 Observer. Функциональный интерфейс
  83. Урок 83. 00:14:32
    1.6.9 Observer. Интерфейс Observable
  84. Урок 84. 00:18:07
    1.6.10 Observer. MutableObservable
  85. Урок 85. 00:06:45
    1.6.11 Observer. Backing field и итоги
  86. Урок 86. 00:21:05
    1.6.12 Command и BlockingQueue
  87. Урок 87. 00:18:03
    1.6.13 Sealed Interface
  88. Урок 88. 00:13:39
    1.6.14 Builder
  89. Урок 89. 00:18:39
    1.7.1 Junit часть 1
  90. Урок 90. 00:14:12
    1.7.2 Junit часть 2. Parameterized Test
  91. Урок 91. 00:22:17
    1.7.3 Массивы
  92. Урок 92. 00:13:38
    1.7.4 ArrayList. Часть 1
  93. Урок 93. 00:16:01
    1.7.5 ArrayList. Часть 2
  94. Урок 94. 00:13:42
    1.7.6 ArrayList. Часть 3. Константы и операторы
  95. Урок 95. 00:12:32
    1.7.7 Алгоритмическая сложность
  96. Урок 96. 00:17:09
    1.7.8 Тестирование исключений. System.arraycopy
  97. Урок 97. 00:07:04
    1.7.9 LinkedList. Принцип работы
  98. Урок 98. 00:29:24
    1.7.10 LinkedList. Реализация
  99. Урок 99. 00:21:52
    1.7.11 LinkedList. Двусвязный список
  100. Урок 100. 00:09:25
    1.7.12 HashSet. Принцип работы
  101. Урок 101. 00:25:31
    1.7.13 HashSet. Реализация. Часть
  102. Урок 102. 00:16:10
    1.7.14 HashSet. Реализация. Часть 2
  103. Урок 103. 00:23:50
    1.7.15 HashSet. Вопросы на собеседовании
  104. Урок 104. 00:09:45
    1.7.16 Параметризируем коллекции
  105. Урок 105. 00:24:35
    1.7.17 Collections и Iterable
  106. Урок 106. 00:09:34
    1.7.18 MutableIterable
  107. Урок 107. 00:10:51
    1.7.19 Реализации Set
  108. Урок 108. 00:04:30
    1.7.20 Устройство TreeSet
  109. Урок 109. 00:14:25
    1.7.21 Неизменяемые коллекции
  110. Урок 110. 00:23:38
    1.7.22 Коллекции Map
  111. Урок 111. 00:13:38
    1.7.23 Использование Map внутри Set
  112. Урок 112. 00:13:24
    1.7.24 Собеседование по теме коллекции
  113. Урок 113. 00:09:54
    1.8.1 Создание GUI
  114. Урок 114. 00:15:16
    1.8.2 Добавление логики и метод String.format
  115. Урок 115. 00:10:58
    1.8.3 Механизм callbac
  116. Урок 116. 00:14:18
    1.8.4 Suspend функции
  117. Урок 117. 00:15:17
    1.8.5 Корутины под капотом
  118. Урок 118. 00:14:06
    1.8.6 Executor Services
  119. Урок 119. 00:12:22
    1.8.7 Structured Concurrency. Часть 1
  120. Урок 120. 00:11:23
    1.8.8 Dispatchers Default и Unconfined
  121. Урок 121. 00:06:30
    1.8.9 Dispatchers IO и Main
  122. Урок 122. 00:11:20
    1.8.10 Job и параллельность
  123. Урок 123. 00:07:27
    1.8.11 Async и Deferred
  124. Урок 124. 00:18:44
    1.8.12 Jobs Hierarchy
  125. Урок 125. 00:12:02
    1.8.13 Исключения. Часть 1
  126. Урок 126. 00:13:41
    1.8.14 Исключения. Часть 2. Async
  127. Урок 127. 00:11:45
    1.8.15 Отмена корутин
  128. Урок 128. 00:09:37
    1.8.16 Suspend Coroutine
  129. Урок 129. 00:05:42
    1.8.17 SupervisorJob
  130. Урок 130. 00:13:02
    1.8.18 Что такое потоки данных
  131. Урок 131. 00:09:07
    1.8.19 Способы создания Sequence
  132. Урок 132. 00:15:34
    1.8.20 Начало работы с Flow
  133. Урок 133. 00:14:21
    1.8.21 Знакомство с API
  134. Урок 134. 00:23:25
    1.8.22 Загрузка данных из сети
  135. Урок 135. 00:19:42
    1.8.23 Создание GUI и работа с Regex
  136. Урок 136. 00:18:46
    1.8.24 Реактивный стиль
  137. Урок 137. 00:11:31
    1.8.25 Channels и Debounce
  138. Урок 138. 00:09:54
    1.8.26 Холодные потоки данных
  139. Урок 139. 00:11:39
    1.8.27 Горячие потоки данных
  140. Урок 140. 00:10:07
    1.8.28 ShareIn
  141. Урок 141. 00:13:31
    1.8.29 Buffer и Backpressure
  142. Урок 142. 00:14:38
    1.8.30 Screen state as Flow
  143. Урок 143. 00:09:22
    1.8.31 MutableStateFlow
  144. Урок 144. 00:15:16
    1.8.32 SharedFlow vs StateFlow
  145. Урок 145. 00:11:42
    1.8.33 Exceptions in Flow
  146. Урок 146. 00:08:28
    1.8.34 Практика работы с исключениями
  147. Урок 147. 00:09:29
    1.8.35 Оператор FlowOn
  148. Урок 148. 00:12:41
    1.8.36 Наследование CoroutineScope
  149. Урок 149. 00:12:04
    1.8.37 Синхронизация корутин
  150. Урок 150. 00:12:07
    1.8.38 Channel
  151. Урок 151. 00:19:39
    1.9.1 Инвариантность и Ковариантность
  152. Урок 152. 00:14:24
    1.9.2 Контрвариантность
  153. Урок 153. 00:07:51
    1.9.3 Стирание типов
  154. Урок 154. 00:13:06
    1.9.4 Reified и Star Projection
  155. Урок 155. 00:15:27
    1.9.5 Inline и Non local return
  156. Урок 156. 00:10:31
    1.9.6 Crossinline и noinline
  157. Урок 157. 00:08:05
    1.9.7 Value classes
  158. Урок 158. 00:23:56
    1.9.8 Делегирование свойств
  159. Урок 159. 00:14:11
    1.9.9 Делегирование реализации интерфейсов
  160. Урок 160. 00:06:57
    1.9.10 Inner и Nested классы
  161. Урок 161. 00:12:57
    1.9.11 Destructuring declaration and Infix
  162. Урок 162. 00:12:09
    1.9.12 Устройство памяти в Kotlin
  163. Урок 163. 00:05:36
    1.9.13 Как работают программы на Java и Kotlin
  164. Урок 164. 00:11:09
    1.9.14 Модификатор Internal
  165. Урок 165. 00:29:50
    1.9.15 Собеседование
  166. Урок 166. 00:01:38
    1.9.18 Финал
  167. Урок 167. 00:06:47
    2.1.1 Установка среды разработки видео для курса Современная Android
  168. Урок 168. 00:13:07
    2.1.2 Знакомство с Android Studio
  169. Урок 169. 00:20:18
    2.1.3 Разбор первой программы. Dp и Sp
  170. Урок 170. 00:09:36
    2.1.4 Modifier
  171. Урок 171. 00:20:12
    2.1.5 Row Column Alignment
  172. Урок 172. 00:18:49
    2.1.6 Combining Containers
  173. Урок 173. 00:16:19
    2.1.7 ARGB модель
  174. Урок 174. 00:17:38
    2.1.8 Scaffold и Custom Components
  175. Урок 175. 00:12:48
    2.1.9 Material Theme
  176. Урок 176. 00:14:09
    2.1.10 Preview и итоги раздела
  177. Урок 177. 00:17:38
    2.2.1 Создаём тему для калькулятора
  178. Урок 178. 00:17:10
    2.2.2 Создание каркаса приложения √ π ^ !
  179. Урок 179. 00:11:01
    2.2.3 Clip. Дорабатываем UI
  180. Урок 180. 00:19:16
    2.2.4 State Рекомпозиции и Логи
  181. Урок 181. 00:11:43
    2.2.5 View и ViewModel
  182. Урок 182. 00:11:25
    2.2.6 Использование паттерна Команда
  183. Урок 183. 00:18:19
    2.2.7 StateFlow и ViewModel
  184. Урок 184. 00:12:39
    2.2.8 Добавляем стейты экрана
  185. Урок 185. 00:12:09
    2.2.9 Форматирование выражения
  186. Урок 186. 00:14:17
    2.2.10 Завершение работы над калькулятором
  187. Урок 187. 00:08:52
    2.3.1 Введение в Clean Architecture
  188. Урок 188. 00:18:05
    2.3.2 Domain слой. Часть 1
  189. Урок 189. 00:06:25
    2.3.3 Domain слой. Часть 2
  190. Урок 190. 00:15:08
    2.3.4 Тестовый Репозиторий
  191. Урок 191. 00:21:24
    2.3.5 NotesViewModel. FlatMapLatest
  192. Урок 192. 00:10:46
    2.3.6 Подготовка к созданию UI
  193. Урок 193. 00:18:58
    2.3.7 RememberScrollState
  194. Урок 194. 00:13:58
    2.3.8 LazyLists
  195. Урок 195. 00:12:32
    2.3.9 Key и настройка темы
  196. Урок 196. 00:22:56
    2.3.10 NotesScreen UI. Часть 1
  197. Урок 197. 00:18:24
    2.3.11 NotesScreen UI. Часть 2
  198. Урок 198. 00:18:34
    2.3.12 ViewModelScope
  199. Урок 199. 00:14:43
    2.3.13 Форматирование даты
  200. Урок 200. 00:18:59
    2.3.14 NotesScreen UI. Часть 3
  201. Урок 201. 00:16:27
    2.3.15 CreateNoteViewModel
  202. Урок 202. 00:19:51
    2.3.16 CreateNoteScreen
  203. Урок 203. 00:13:57
    2.3.17 SideEffects
  204. Урок 204. 00:17:05
    2.3.18 EditNoteScreen
  205. Урок 205. 00:11:09
    2.3.19 Кастомная навигация
  206. Урок 206. 00:13:38
    2.3.20 Jetpack Compose Navigation
  207. Урок 207. 00:10:39
    2.3.21 Передача параметров в навигации
  208. Урок 208. 00:09:10
    2.3.22 Введение в базы данных
  209. Урок 209. 00:07:55
    2.3.23 Mapper и Entity
  210. Урок 210. 00:16:36
    2.3.24 SQL. Создание DAO
  211. Урок 211. 00:08:58
    2.3.25 Context
  212. Урок 212. 00:10:14
    2.3.26 Создание базы данных
  213. Урок 213. 00:09:58
    2.3.27 NotesRepositoryImpl
  214. Урок 214. 00:07:44
    2.3.28 Использование нового репозитория
  215. Урок 215. 00:19:44
    2.4.1 Dependency Injection. Введение
  216. Урок 216. 00:10:58
    2.4.2 Компонент. Инъекция в свойства класса
  217. Урок 217. 00:14:37
    2.4.3 Жизненный цикл зависимостей
  218. Урок 218. 00:15:10
    2.4.4 Подключение Hilt
  219. Урок 219. 00:13:16
    2.4.5 Module Provides Singleton
  220. Урок 220. 00:06:06
    2.4.6 Binds
  221. Урок 221. 00:14:07
    2.4.7 Assisted Inject
  222. Урок 222. 00:12:02
    2.4.8 Hilt Navigation Compose
  223. Урок 223. 00:15:29
    2.4.9 Практика. Добавление Hilt в приложение Notes
  224. Урок 224. 00:14:08
    2.4.10 FAQ и подведение итогов
  225. Урок 225. 00:14:13
    2.5.1 Сериализация контента
  226. Урок 226. 00:16:05
    2.5.2 Подготовка к работе с изображениями
  227. Урок 227. 00:16:57
    2.5.3 ActivityResultApi
  228. Урок 228. 00:19:43
    2.5.4 Сохранение изображений
  229. Урок 229. 00:23:13
    2.5.5 Coil и группировка изображений
  230. Урок 230. 00:20:13
    2.5.6 Практика. Экран редактирования заметки
  231. Урок 231. 00:19:14
    2.5.7 External и Internal Storage
  232. Урок 232. 00:14:24
    2.5.8 Работа с Internal Storage
  233. Урок 233. 00:13:45
    2.5.9 Отображение картинок на главной
  234. Урок 234. 00:16:32
    2.5.10 Градиенты и строковые ресурсы
  235. Урок 235. 00:15:00
    2.5.11 Splash Screen Api
  236. Урок 236. 00:07:46
    2.5.12 Нормализация БД
  237. Урок 237. 00:17:14
    2.5.13 Embedded Relation Join
  238. Урок 238. 00:11:31
    2.5.14 Поддержка новой схемы БД
  239. Урок 239. 00:11:29
    2.5.15 Транзакции и Итоги
  240. Урок 240. 00:02:10
    2.6.1 Демонстрация приложения News
  241. Урок 241. 00:14:54
    2.6.2 Добавление зависимостей
  242. Урок 242. 00:27:08
    2.6.3 Domain слой и Database
  243. Урок 243. 00:03:34
    2.6.4 Index Room
  244. Урок 244. 00:12:34
    2.6.5 Знакомство с API
  245. Урок 245. 00:17:57
    2.6.6 Retrofit
  246. Урок 246. 00:22:10
    2.6.7 Реализация Репозитория
  247. Урок 247. 00:21:07
    2.6.8 SubscriptionsViewModel
  248. Урок 248. 00:30:23
    2.6.9 SubscriptionsScreen
  249. Урок 249. 00:12:31
    2.6.10 SubscriptionsScreen Часть 2
  250. Урок 250. 00:12:12
    2.6.11 Явные и неявные интенты
  251. Урок 251. 00:05:09
    2.6.12 Компоненты Android
  252. Урок 252. 00:12:30
    2.6.13 WorkManager
  253. Урок 253. 00:09:10
    2.6.14 Hilt with Workers
  254. Урок 254. 00:08:37
    2.6.15 Domain Settings
  255. Урок 255. 00:19:24
    2.6.16 Data Store
  256. Урок 256. 00:05:02
    2.6.17 Annotation param и Merged Manifests
  257. Урок 257. 00:08:41
    2.6.18 Constraints
  258. Урок 258. 00:06:30
    2.6.19 AppStartupManager
  259. Урок 259. 00:18:12
    2.6.20 Notifications
  260. Урок 260. 00:08:21
    2.6.21 Pending Intent
  261. Урок 261. 00:11:18
    2.6.22 Применение настроек для загрузки
  262. Урок 262. 00:10:09
    2.6.23 BuildConfig
  263. Урок 263. 00:08:01
    2.6.24 SettingsViewModel
  264. Урок 264. 00:31:33
    2.6.25 SettingsScreen
  265. Урок 265. 00:04:46
    2.6.26 Навигация
  266. Урок 266. 00:02:58
    2.6.29 Финал