Содержание курса
Введение
8 уроков
1.
О курсе
↗
2.
Что нужно сделать
↗
3.
Про Golang
↗
4.
Установка Golang
↗
5.
Установка редактора кода
↗
6.
Первая программа
↗
7.
Запуск и компиляция
↗
8.
Отладка
↗
Базовые типы
27 уроков
1.
Переменные
↗
2.
Названия переменных
↗
3.
Типы
↗
4.
Тип int
↗
5.
Переполнение и приведение типов int
↗
6.
Типы byte и rune
↗
7.
Выбор int
↗
8.
Система счисления
↗
9.
iota
↗
10.
Случайное целое число
↗
11.
Тип float
↗
12.
Случайное дробное число
↗
13.
Тип complex
↗
14.
Пакет math
↗
15.
Тип bool
↗
16.
Тип string
↗
17.
Пакет strings
↗
18.
Приведение в строку
↗
19.
Приведение строки в число
↗
20.
Пакет fmt
↗
21.
Спецификаторы f-функций
↗
22.
Тип rune
↗
23.
Указатели
↗
24.
nil и new
↗
25.
Ввод данных от пользователя
↗
26.
Тип any или interface{}
↗
27.
Другие типы
↗
Операторы
9 уроков
1.
Операторы и операнды
↗
2.
Математические операторы
↗
3.
Операторы присваивания
↗
4.
Конкатенация
↗
5.
Сравнение
↗
6.
Логические операторы
↗
7.
Логические "И", "ИЛИ"
↗
8.
Побитовые операторы
↗
9.
Пример побитовых операторов
↗
Ветвления
7 уроков
1.
Логические конструкции if-else
↗
2.
Логическое if с присвоением значения
↗
3.
Конструкция switch
↗
4.
Область видимости
↗
5.
Практика - Определение времени суток
↗
6.
Практика - Калькулятор ИМТ
↗
7.
Практика - Поиск по названию товара
↗
Функции
25 уроков
1.
Создание функций
↗
2.
Параметры
↗
3.
Возвращение значений
↗
4.
Именованый return
↗
5.
Применение return
↗
6.
Вариативный параметр
↗
7.
Указатели и функции
↗
8.
defer
↗
9.
Нюансы defer
↗
10.
Стек вызовов - callstack
↗
11.
Паника!!!
↗
12.
Ошибки
↗
13.
Оборачивание ошибок
↗
14.
Замыкания
↗
15.
Пользовательские типы
↗
16.
Инициализация с init
↗
17.
Рекурсия
↗
18.
Практикуемся с рекурсией - факториал
↗
19.
Стиль функций
↗
20.
Одна функция - одна задача
↗
21.
if, else и return
↗
22.
Затенение переменных
↗
23.
Имена функций
↗
24.
Практика - Система оценок
↗
25.
Практика - Декораторы
↗
Пакеты
3 урока
1.
Пакеты в golang
↗
2.
Внешние пакеты и их подключение
↗
3.
Советы по пакетам
↗
Циклы
6 уроков
1.
Цикл for
↗
2.
Итерация по строкам
↗
3.
break, continue и return
↗
4.
Вложенные циклы и лейблы
↗
5.
Практика - Игра "Угадай число"
↗
6.
Практика - Анализ текста
↗
Массивы
6 уроков
1.
Создание массивов
↗
2.
Доступ к значениям массивов
↗
3.
Итерация по массиву
↗
4.
Массивы и функции
↗
5.
Сравнение массивов
↗
6.
Практика - Секретный код
↗
Слайсы
16 уроков
1.
Создание слайсов
↗
2.
Итерация по слайсу
↗
3.
Просто про добавление значений - append()
↗
4.
Вариативные параметры функции
↗
5.
Пустой слайс - nil
↗
6.
Вложенные массивы и слайсы
↗
7.
Копирование - copy
↗
8.
Подслайсы
↗
9.
Указатель на элемент
↗
10.
Вставка значений - append()
↗
11.
Удаление значений
↗
12.
Нюансы работы со слайсами
↗
13.
Сортировка
↗
14.
Пакет slices
↗
15.
Практика - шифр Цезаря
↗
16.
Практика - Отслайси его!
↗
Структура map
12 уроков
1.
Создание map
↗
2.
Итерация по map
↗
3.
Изменение map во время итерации
↗
4.
Ключи
↗
5.
Значения
↗
6.
Скорость работы
↗
7.
Пример использования
↗
8.
Сравнение
↗
9.
Копирование и клонирование
↗
10.
Удаление значений с maps.DeleteFunc()
↗
11.
Практика - рекомендации фильмов
↗
12.
Практика - анализ друзей
↗
Структуры
15 уроков
1.
Проблема хранения данных
↗
2.
Структуры
↗
3.
Вложенные структуры
↗
4.
Передача по значению
↗
5.
Методы
↗
6.
Изменение структуры в методах
↗
7.
Экспортируемость полей и методов
↗
8.
Функция-конструктор
↗
9.
Теги
↗
10.
Композиция
↗
11.
Встраивание
↗
12.
Композиция vs встраивание
↗
13.
Пустая структура
↗
14.
Практика - система управления тегами
↗
15.
Практика - система управления проектами
↗
Интерфейсы
10 уроков
1.
Создание интерфейсов
↗
2.
Пример использования
↗
3.
Тип any или пустой интерфейс
↗
4.
nil
↗
5.
Вызов метода у nil
↗
6.
Пользовательские типы
↗
7.
Пример использования пользовательских типов
↗
8.
Сложнее пример с интерфейсами
↗
9.
Встраивание интерфейсов
↗
10.
Практика - Симуляция жизни в деревне
↗
Ошибки
9 уроков
1.
Вспоминаем про ошибки
↗
2.
Оборачивание ошибок
↗
3.
Пользовательские ошибки
↗
4.
Функции errors.Is() и errors.As()
↗
5.
Как устроены errors.Is() и errors.As()
↗
6.
Оборачивание пользовательских ошибок
↗
7.
Другой подход к работе с ошибками
↗
8.
Советы по работе с ошибками
↗
9.
Практика - Обработка ошибок платежа
↗
Конец первой части курса
2 урока
1.
Друзья курса
↗
2.
Что дальше?
↗