Курс «Профессия Backend-разработчик на Go»

Направление
Другое
Формат
Видео в записи
Упражнения на платформе
Домашние задания
Есть
Итоговый экзамен
Нет
Количество уроков
4
Документ об обучении
Сертификат
Обратная связь
Есть
Доступ
Сразу после покупки
Последнее обновление 22.05.2022

О курсе

Освойте программирование на Go и бэкенд-разработку высоконагруженных приложений.

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

  1. Вводный блок:
    • Ключевые понятия в IT области
    • Классификация языков программирования

    • Современные технологии и работа интернета
    • Архитектура компьютера и операционных систем

    Основы языка Go:
    • Установка окружения, компиляция и запуск программ на Go, основные синтаксические конструкции (пакеты, переменные и типы данных, константы, введение в строки)
    • Ветвления, циклы
    • Функции и методы, структуры
    • Обработка ошибок и паник, интерфейсы, рекурсия
    • Массивы, словари, слайсы, строки, руны и слайсы байт
    • + 1 неделя практики

    Алгоритмы и структуры данных на Go:
    • Введение, сложность алгоритмов и О-нотации
    • Массив, список, очередь, стек. Представление в памяти
    • Алгоритмы сортировки
    • Деревья, графы, алгоритмы поиска
    • Хэш-таблицы, Хэш-мапы, Хэш-функции

    Основы многопоточности:
    • Понятие процесса и потока в операционной системе
    • Горутины и базовая синхронизация
    • Синхронизация с использованием атомиков и каналов
    • Wait group, основные шаблоны использования горутин

    Выполнение проекта: собрать пайплайн обработки данных
  2. Основы Linux:
    • Установка Linux, работа с графической оболочкой
    • Управление пользователями, работа с файлами, процессы
    • Сетевые интерфейсы Linux

    Знакомство с Git:

    • Основы систем контроля версий, инициализация репозитория, синхронизация изменений, запись изменений в репозиторий
    • Ветвление, Git Flow

    Docker:
    • Основы Docker, Запуск приложений в контейнере
    • + 1 неделя практики по GIT, Docker и Linux

    Базы данных и SQL:
    • Реляционные базы данных, проектирование базы данных
    • Язык SQL, Транзакции
    • Индексы, триггеры, представления, хранимые процедуры
    • Работа с SQL базой данных в Go

    Базы данных NoSql:
    • Документные базы данных, отличие от SQL
    • Введение в Mongo DB и Redis
    • + 1 неделя практики по работе с базами данных

    Углубленное изучение Go:
    • Модули, профилирование, отладка
    • Тестирование
    • Ввод/вывод. Регулярные выражения
    • Сетевые приложения
    • Web-приложения

    Выполнение проекта: разработка новостного агрегатора
  3. Основы архитектуры:
    • Архитектурные принципы
    • Шаблоны проектирования
    • Очереди сообщений
    • Методы доставки приложений
  4. Разделение монолита на микросервисы:
    Цель практики:
    Научиться делить или «пилить» монолитное приложение — разработанный ранее агрегатор новостей — на три микросервиса с их доработкой.

    Результаты проекта для студентов:
    Разработка трех микросервисов: агрегатор новостей, API Gateway и сервис модерации комментариев
    Сравнение монолитной и микросервисной архитектуры на практике
    Пополнение портфолио на GitHub полноценным проектом

Другие курсы по этой теме

Помогите нам улучшить наш сервис, поделитесь своим опытом, пройдя небольшой опрос. Он займет у вас не больше 5 минут.
Пройти опрос