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

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

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

О курсе

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

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

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

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

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

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

 

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

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

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

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

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

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

Строим гибкую платформу для проведения экспериментов машинного обучения внутри компании: управляю серверами, кластером 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

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

обновлено 08.10.2024 08:56
Golang для начинающих

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

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