План на курса

Go в Контекст: Сравнение

  • Go срещу Java, Python, C и други
  • Основни дизайн философии на Go
  • Кога (и когато не) да се използва Go

Основни Концепции на Езика

  • Настройка на развитие на среда за Go
  • Променливи, константи и типове
  • Функции и множествени връщане на стойности
  • Структури на управление: if, switch, for
  • Масиви, срези и карти
  • Структури и вграждане
  • Методи и интерфейси
  • Разбиране на указатели в Go
  • Идиоми и шаблони за обработка на грешки

Конкуренция в Go

  • Goрутини и планиращят Go runtime
  • Канали и предаване на съобщения
  • Изявления select
  • Шаблони за конкуренция (разделяне на поток, събиране на поток, работни групи)
  • Синхронизация (WaitGroups, Mutexes)

Използване на Стандартни и Често Използвани Пакети

  • Работа с пакетите fmt, strings, time и math
  • Вход-изход с файлове с os и io/ioutil
  • HTTP клиенти и сървъри с net/http
  • Разбиране и кодиране на JSON

Организация на Проекти и Go Модули

  • Използване на Go модули за управление на зависимости
  • Организиране на пакети и файлове
  • Създаване и инсталиране на Go приложения

Go Инструменти

  • Използване на gofmt и go vet за форматиране и проверка на код
  • Изпълнение и писане на единични тестове с go test
  • Измерване на производителност и профилиране с go test -bench и pprof
  • Диагностика с Delve (опционално)

Резюме и Следващи Стъпки

  • Най-добри практики за развитие на Go
  • Обзор на Go уеб рамки и екосистема
  • Ресурси за продължаващо обучение

Изисквания

  • Познание на какъвто и да е език за програмиране (например, C, Java, Python, PHP, и т.н.).
  • Този курс не обяснява основни концепции като цикъл или if-изразове – той се фокусира върху това как те се реализират в Go.

Целева аудитория

  • Разработчици на софтуер, познати с други езици за програмиране
  • Разработчици на бекенд, прехождащи към Go
  • Инженери, работещи над облачни приложения или приложения с критично значение за производителността
 28 Часа

Брой участници


Цена за участник

Oтзиви от потребители (6)

Предстоящи Курсове

Свързани Kатегории