Что вы изучите Основы синтаксиса и работы с типами данных. Обработку ввода, конвертацию чисел, работу с 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-утилиты и сетевые приложения. Поймёте, как использовать горутины и каналы для параллельной работы. Сможете реализовывать алгоритмы обработки и сжатия данных. Получите готовые проекты для портфолио.