Мы начнём с самого нуля и научимся, объявлять переменные, функции работать с типами данных и управлять потоком. Далее перейдём к разбору различных структур. Разберём Array и Slice и чем они отличаются, затем Map и погрузимся в указатели.
После мы перейдём к struct, как основному строительному блоку наших приложений. Как объявлять методы, создавать struct и валидировать данные. Разобьём наш проект на пакеты и познакомимся с работой с операционной системой.
После прохождения курса вы сможете:
- Писать на golang
- Декомпозировать приложение на packages
- Работать с различными типами данных
- Создавать array, slices, map, struct
- Использовать interfaces и DI
- Работать с внешними зависимостями
- Работать с ОС и шифрованием
- Делать http запросы
- Писать тесты
- Работать с переменными окружения
Программа курса
1. Введение
- Почему Golang
- Как устроен курс
- Обзор проектов
- Работа на платформе
- Обзор курсов
2. Настройка окружения
- Настройка окружения
- Установка Golang
- Настройки VSCode
- Рекомендуемый курс
3. Переменные и типы
- Создание первого приложения
- Packages
- Go modules
- Переменные и значения
- Типы
- Варианты записи переменных
- Константы
- Тест — Переменные и типы
4. Строки и функции
- Ввод и вывод
- Форматирование строк
- Многострочные строки
- Создание форматированных строк
- Создание функции
- Возвращаемое значение
- Упражнение — Несколько значений возврата
- Scope функций
- Тест — Строки и функции
5. Управление потоком
- Типы данных
- if
- Булева логика
- else if
- switch
- Циклы
- Break и continue
- Упражнение — Повторение ввода
- Error
- Panic
- Тест — Управление потоком
6. Array и Slice
- Массивы
- Работа с массивами
- Slice
- Cap и len
- Динамические массивы
- Упражнение — Массив транзакций
- Unpack
- Циклы по массивам
- Упражнение — Расчёт баланса
- Make
- Увеличение cap
- Тест — Array и Slice
7. Map
- Map
- Изменение Map
- Итерация по Map
- Упражнение — Утилита закладок
- Labels
- Type Alias
- Make для Map
- Тест — Map
8. Указатели
- Все типы данных
- Что такое указатель
- Создание указателя
- Использование указателя
- Упражнение — Reverse массива
- Тест — Указатели
9. Struct
- Зачем нужны Struct
- Описание struct
- Создание инстанса
- Передача структур
- Использование указателей
- Rune
- Упражнение — Генерация пароля
- Методы
- Упражнение — Мутация struct
- Функция constructor
- Валидация данных
- Упражнение — Перенос генерации
- Композиция
- Тест — Struct
10. Пакеты
- Разделение кода
- Добавление пакета
- Импорт и экспорт
- Добавление сторонних пакетов
- Упражнение — Package файлов
- Go mod tidy
- Тест — Пакеты
11. Работа с ОС
- Запись в файл
- Stack frame
- Defer
- Чтение из файла
- JSON
- Struct tags
- Сохранение JSON
- Упражнение — Меню выбора
- Slice stuct
- Чтение JSON
- Упражнение — Поиск пароля
- Упражнение — Удаление пароля
- Тест — Работа с ОС
12. Интерфейсы
- Изменение files
- Внедрение зависимостей
- Второй провайдер
- Создание интерфейса
- Встроенный интерфейс
- Any тип
- Type Switch
- Получение типа
- Generic
- Ограничения Generic
- Generic Structs
- Упражнение — Generic ввода
- Тест — Интерфейсы
13. Продвинутые функции
- Тип функции
- Передача функций
- Анонимные функции
- Упражнение — Поиск по логину
- Динамическое число аргументов
- Замыкание
- Тест — Продвинутые функции
14. Env и шифрование
- Получение env
- Чтение env файла
- Encrypter struct
- Шифрование данных
- Расшифровка данных
- Упражнение — Применение шифрования
- Тест — Env и шифрование
15. HTTP запросы
- Создание нового проекта
- План проекта
- CLI флаги
- Readers
- Первый HTTP запрос
- Query параметры
- Debug приложения
- Post запрос
- Тест — HTTP запросы
16. Тесты
- Arrange Act Assert
- Первый тест
- Debug теста
- Негативный тест
- Упражнение — Тест погоды
- Упражнение — Ошибки
- Группы тестов
- Тест — Тесты
17. Заключение
- Куда двигаться дальше
- Сессия на с наставником
Тариф Без наставника:
- 1урока видео лекций
- тестовых заданий
- упражнений










