Сложность
Сложность
Начинающий
Тип обучения
Тип обучения
Курс
Формат обучения
Формат обучения
С проверкой домашнего задания
Трудоустройство
Трудоустройство
Содействие

Стоимость курса

бесплатно
нет рассрочки

О курсе

Преподаватели — разработчики Тинькофф
Делятся инструментами и методиками, которыми пользуются в реальной работе

Онлайн-доступ к учебным материалам
Лекции и домашние задания, где сможете отработать полученные навыки

Практическая применимость
Закрепляем полученные знания на практике: сдаем домашние задания, разрабатываем собственные проекты

Для студентов и всех желающих
Студенты могут получить зачет. Попросим прислать студенческий и записаться на спецкурс в вузе

Длительность
13 практикоориентированных занятий: по одному занятию в неделю

Нагрузка
Вы будете тратить до 10-15 часов в неделю на онлайн-занятия и выполнение домашних заданий

 

По окончании курса

  • Будете разбираться в основах и особенностях Golang
  • Закрепите и опробуете полученные знания в домашних заданиях
  • Получите первый опыт промышленной разработки собственного проекта
  • Сможете уверенно пройти техническое интервью при собеседовании

Что вы получите после обучения

Приобретаемые навыки
2
Golang
3
Базы данных
6
HTTP
7
Ошибки
8
Фреймворки
9
CORS
10
Дженерики
11
Работа с памятью
12
Микросервисы
13
Паттерны разработки
14
Go-модули
15
HTTPS
16
Web socket

Вас будут обучать

Руководитель группы разработки

Строим гибкую платформу для проведения экспериментов машинного обучения внутри компании: управляю серверами, кластером kubernetes, приложениями в нем

Ведущий разработчик

Разрабатываем всё, что связано с внебиржевой торговлей в рамках Тинькофф Инвестиций. Решаем проблемы высоконагруженных систем кэшами и гошной асинхронщиной

Разработчик

Разрабатываю платформу, которая помогает инженерам быстро и удобно создавать искусственный интеллект. Знаю, сколько нужно ресурсов для успешного обучения

Образовательная организация

Готовим школьников к олимпиадам
Учим решать задачи по математике, информатике и экономике.

Запускаем стажировки
Проводим оплачиваемые стажировки по направлениям аналитики, бэкенд- и фронтенд-разработки, QA, маркетинга и другим.
 
Сотрудничаем с вузами
Готовим специалистов на собственных кафедрах, открываем лаборатории, делимся опытом на спецкурсах.
 
Проводим курсы и мероприятия
Организовываем интенсивы для профессионального развития и нетворкинга.

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

Введение в Go

  • История языка
  • Базовые типы данных
  • Управление выполнением
  • Исходный код

ООП и работа с памятью

  • Структуры
  • Составные типы
  • Работа с памятью в Go
  • Соглашения об именованиях

ООП и обработка ошибок

  • Интерфейсы
  • Обработка ошибок
  • Логирование

Асинхронная модель

  • Планировщик
  • Горутины и примитивы синхронизации
  • Каналы
  • Контекст

Паттерны разработки

  • Fan-out vs funnel (fan-in) vs turnout
  • Как закрыть канал и вычитать все из него
  • Спин-очередь (Ticket storage)
  • Worker pool
  • Паттерны pipelines и options
  • Декораторы
  • Источники

Go-модули и чистая архитектура

  • Модули
  • Популярные фреймворки на Go
  • Чистая архитектура

Углубленная работа с типами и конфигурация приложений

  • Дженерики
  • Конфиги и окружение
  • Шаблоны и встраивание
  • Рефлексия и кодогенерация

Основы веб-разработки

  • HTTP
  • HTTPS
  • Паттерны клиент-серверного взаимодействия
  • Пакет net/http
  • HTTP-роутер на примере фреймворка

Углубленная веб-разработка

  • Web socket
  • CORS: причины появления, описание и примеры
  • HTTP-[2,3]
  • GRPC: protobuf, grpc, пример клиент-серверного взаимодействия
  • Graceful shutdown: предпосылки и пример

Тестирование

  • Обоснование необходимости тестирования
  • Подходы к тестированию. Основные виды тестов. Пирамида тестирования
  • Паттерны написания тестов
  • Популярные фреймворки
  • Прочие методы тестирования
  • Автоматизация тестирования

Базы данных

  • Реляционные базы данных
  • Нереляционные базы данных
  • Плюсы/минусы SQL/NoSQL
  • CRUD
  • Работа с postgres на примере фреймворка
  • Уязвимости и защита от них
  • Виды SQL Injection
  • Зачем хэшировать пароли
  • Оптимизация запросов к базе

Микросервисная архитектура

  • Различные архитектуры сервисов
  • Доступность приложения
  • Мониторинг приложения
  • DevOps: docker
  • DevOps: деплой
  • Отладка
  • Профилирование

Применение Go в различных областях

  • Интеграции с другими ЯП
  • Работа на различных платформах
  • Десктопные приложения
  • Фронтенд

Рейтинг курса

2.7
рейтинг
0
0
0
0
0

Может быть интересно

обновлено 24.03.2024 11:43
Golang для начинающих

Golang для начинающих

Оставить отзыв
Поделиться курсом с друзьями