Разработка на Go

Бесплатный
Онлайн + Офлайн
Оставьте предварительную заявку
Курс в проработке

О курсе

Для кого?

Курс лекций рассчитан на людей, знающих основы любого языка программирования.

Что дает курс?

  • Освоите принципы программирования на Go;
  • Сможете использовать Go для написания сервисов, работающих с базами данных и сторонними API.

Информация

  • Занятия будут проходить в двух форматах — онлайн и офлайн. Занятия онлайн будут транслироваться на YouTube-канале Академии. Об офлайн-занятиях вы получите информацию на электронную почту после регистрации;
  • После окончания курса и выполнения итогового задания будут выданы сертификаты.

Программа курса

  • /01 тема
    Вводная часть

    Что такое Go;

    Зачем учить Go в 2023 году;

    В каких сферах применяется Go и какие задачи приходится решать;

    Разбор среды разработки на Go.

  • /02 тема
    Обзор базового функционала языка

    Типы данных;

    Управление потоком программы;

    Структуры данных;

    Функции.

  • /03 тема
    ООП, обработка ошибок, многопоточность

    ООП в Go;

    Дженерики;

    Обработка ошибок и паник;

    Многопоточность — инструменты работы, каналы и решение задач;

    Что такое горутины и в чём их преимущество.

  • /04 тема
    Шаблон проекта на Go

    Изучение golang project layout;

    Пакет context;

    Знакомство с TCP и написание простого чата;

    Работа со сторонними пакетами;

    Сервер и клиент.

  • /05 тема
    Форматы передачи данных, работа с реляционными БД

    Знакомство с форматами передачи данных: JSON, XML, Protobuf;

    Работа с базами данных;

    Разборы библиотек для работы с базой данных;

    Написание запросов в коде и ORM.

  • /06 тема
    Тестирование, рефлексия и кодогенерация

    Производительность и тестирование проекта;

    Пакет testing;

    Написание бенчмарков. Сравнение кода в производительности;

    Рефлексия и кодогенерация.

  • /07 тема
    Клиент-серверное взаимодействие

    HTTP: что это, разбор, построение и написание простого сервера;

    RESTful API — что это такое;

    Логирование;

    Swagger;

    Веб-фреймворки: GO-swagger, echo, gin.

  • /08 тема
    Микросервисы и монолит, межсервисное взаимодействие

    Преимущество микросервисов над монолитом;

    Создание микросервисной архитектуры;

    Создание межсервисного взаимодействия: JSON-RPC, GRPC;

    Брокеры: Kafka, Nats, RabbitMQ;

    Хранилища статической информации на примере MinIO.