Jungle Courses

Golang programming

12 000 UAH за курс
3 місяців
Для початківців
Golang
Цей курс навчить вас Golang з нуля: від синтаксису до роботи з базами даних та API. Ви розберете основні концепції, створите власний проєкт і отримаєте практичні навички. Навчання включає онлайн-лекції, спілкування з менторами та доступ до матеріалів.

Про курс

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

Вступ до Go та налаштування середовища

На цьому курсі починають з основ. Студенти знайомляться з ментором, вивчають компоненти комп'ютера та дізнаються про мову Go. Після цього встановлюють необхідні інструменти - Golang та редактор VSCode. Модуль завершується традиційним "Hello World" - першою програмою на Go.

Синтаксис та управління потоком виконання

Тут розглядають фундаментальні концепції мови. Студенти працюють зі змінними, основними типами даних та константами. Вчаться використовувати умовні конструкції if/else та оператори порівняння. Також вивчають switch case та цикли для контролю потоку виконання програми.

Функції та структури

Цей модуль присвячений функціям - їх оголошенню та виклику. Розглядають анонімні функції, замикання та область видимості. Студенти дізнаються про ключове слово defer та вчаться працювати зі структурами та методами.

Складні типи даних та математичні операції

Тут вивчають масиви, зрізи та асоціативні масиви (maps). Другий блок модуля охоплює математичні операції - від базових арифметичних дій до складніших функцій округлення, коренів, степенів та тригонометрії. Також працюють з генерацією випадкових чисел.

Пакети та інтерфейси

Студенти освоюють роботу з пакетами - структуру проектів, файл go.mod, імпорти та модулі Go. Паралельно вивчають інтерфейси, їх реалізацію та методи, що входять до набору інтерфейсу.

Обробка помилок, тестування та логування

Цей модуль вчить правильно обробляти помилки, вести логування та писати unit-тести. Студенти створюють тестові функції та тест-кейси для перевірки роботи свого коду.

Покажчики, контекст та розширені типи

Тут розбирають складніші концепції - покажчики та контекст. Також вивчають переліки (enum), iota, бітові маски, роботу з часом та руни.

Паралельне програмування та нові можливості Go

Модуль охоплює горутини, м'ютекси, групи очікування та канали для паралельного виконання коду. Другий блок присвячений новим функціям мови - генераікам, функціям min/max, ідіомі "ok" та роботі з C кодом через cgo.

Робота з файлами, графікою та API

Студинти вчаться працювати з файловою системою, обробляти зображення та створювати 2D графіку. Також знайомляться з основами API - встановлюють Postman, вивчають HTTP, RESTful API, формати JSON та JWT, створюють приклад проекту.

Бази даних

Цей великий модуль охоплює роботу з базами даних. Спочатку студенти дізнаються про різні типи БД - MySQL, PostgreSQL, MongoDB, встановлюють MySQL та вчаться взаємодіяти з нею. Потім вивчають синтаксис MySQL, створення таблиць, колонок та використання ORM бібліотеки GORM.

Розширені технології: gRPC та брокери повідомлень

Тут розглядають Protobuf та gRPC для мікросервісної архітектури. Також студенти встановлюють NATS, вчаться з ним працювати та порівнюють з протоколом MQTT.

Фінальний проект

Останні модулі присвячені створенню повноцінного проекту. Студенти розробляють архітектуру, налаштовують змінні середовища, middleware та систему контролю версій Git. Потім реалізують обробники запитів, сервісний та бази даних шар, документацію через Swagger. Додають кешування - в пам'яті та через Redis, інтегрують брокер повідомлень NATS. Завершують проект тестуванням, бенчмарками та профілюванням для оптимізації продуктивності.

Стратегії оптимізації

Завершальний модуль розкриває стратегії масштабування - балансування навантаження, реплікацію баз даних, партиціонування таблиць. Студенти отримують заключну інформацію для подальшого розвитку.

Особливості курсу

Курс надає доступ до власного хмарного кабінету Jungle cloud. Заняття проходять онлайн з можливістю спілкування в чаті. Викладачі мають глибокі знання у своїй галузі. Програма поєднує теоретичну частину з практичними завданнями. Учасники отримують доступ до записів уроків та додаткових відеоматеріалів. Під час навчання створюється фінальний проект, а після успішного завершення курсу - видається сертифікат.

Що включено

Видається диплом/сертифікат
Гнучкий графік
Реальний проект у портфоліо
Супровід ментора