Course: «Go Programming Language»

$
1.00
$
999.00
Что вы изучите
Основы синтаксиса и работы с типами данных.
Обработку ввода, конвертацию чисел, работу с big.Int.
Создание CLI-приложений и парсинг аргументов.
Работу с массивами, слайсами, структурами, map и временем.
Интерфейсы и принципы ООП в Go.
Чтение и запись файлов, работа с JSON, CSV и конфигурациями.
Цифровые подписи, буферы, бинарные данные.
Параллельное программирование с горутинами и каналами.
Создание сетевых приложений (чат клиент-сервер).
Реализацию алгоритмов сжатия данных (код Хаффмана).

Программа курса
1. Установка и настройка Go
Установка языка, настройка окружения, обработка пользовательского ввода, конвертация чисел, работа с большими числами (big.Int).
2. Шифрование и обработка данных
Реализация шифра XOR, парсинг аргументов CLI, работа с пакетами, циклы, байты, слайсы, обработка ошибок, кодирование Base64.
3. Массивы, структуры и работа с файлами
Массивы и слайсы, структуры, циклы, построение графиков, работа с CSV и JSON, квиз по странам и практические задачи.
4. Карты и расширенное ООП в Go
Использование map, методы и логгеры, создание собственных типов, работа с датами и временем, расширенные функции.
5. Интерфейсы и гибкий код
Примеры с интерфейсами на основе «котиков», универсализация функций.
6. CLI-приложения и защита данных
Библиотека Cobra, обработка аргументов, генерация ключевых пар, защита данных, практическая реализация.
7. Конфиги, подписи и бинарные данные
Viper для работы с конфигами, цифровые подписи, контексты, PEM-файлы, буферы и бинарные данные.
8. Релизы и автоматизация
Интеграция с Goreleaser, написание документации, управление версиями, настройка GitHub Actions, выпуск релиза.
9. Параллельное программирование
Горутины, каналы, оператор select, deadlock, многопоточное выполнение.
10. Сетевое программирование: чат
Создание клиент-серверного чата, каналы и горутины, отмена процессов.
11. Безопасная работа с параллельным кодом
Data races, мьютексы, семафоры, безопасный доступ к данным, мемоизация.
12. Алгоритмы сжатия данных
Реализация кода Хаффмана, сжатие строк, двоичные кучи.

Для кого этот курс
Новички, которые хотят быстро освоить Go с нуля.
Программисты, изучающие новый язык для работы над backend-проектами.
DevOps-инженеры и системные администраторы.
Разработчики, работающие с микросервисами, сетевыми и CLI-инструментами.

Что нужно для старта
Компьютер с доступом в интернет.
Установленный Go (инструкции в курсе).
Базовое понимание программирования (желательно, но не обязательно).

Результат обучения
После прохождения курса вы:
Сможете уверенно писать код на Go.
Научитесь создавать свои CLI-утилиты и сетевые приложения.
Поймёте, как использовать горутины и каналы для параллельной работы.
Сможете реализовывать алгоритмы обработки и сжатия данных.
Получите готовые проекты для портфолио.