Що нового?

Набір учасників [mail.ru] Стань GO-розробником

Інформація про покупку
Тип покупки: Складчина
Ціна: 11030 ГРН
Учасників: 0 з 183
Організатор: Відсутній
Статус: Набір учасників
Внесок: 62.7 ГРН
0%
Основний список
Резервний список

Gadzhi

Модератор

За 2 місяці ви освоїте професію на рівні middle-спеціаліста
Ми даємо багато матеріалу і складні домашки, які відчутно піднімуть ваш рівень і допоможуть впевнено використовувати мову в роботі.
1 тиждень. Введення в Golang

розберетеся з основами мови:
  • Змінні, базові типи даних
  • Змінні, складові типи даних
  • Керуючі конструкції
  • Основи функцій
  • Функція як об'єкт першого класу, анонімні функції
  • Відкладене виконання та обробка паніки
  • Основи роботи зі структурами
  • Методи структур
  • Пакети і область видимості
  • Основи роботи з інтерфейсами
  • Порожній інтерфейс
  • Композиція інтерфейсів
  • Написання програми унікалізації
  • Написання тестів для програми унікалізації
2 тиждень. Асинхронна робота

Освоїте головну особливість мови. асинхронність і простота-ось що робить Go таким потужним інструментом.
  • Методи обробки запитів і плюси неблокуючого підходу
  • Горутини-легковагі процеси
  • Канали-передаємо дані між горутинами
  • Мультиплексування каналів через оператор select
  • Таймери і таймаути
  • Пакет context і скасування виконання
  • Асинхронне отримання даних
• Пул воркеров
• sync.Waitgroup-очікування завершення роботи
  • Обмеження по ресурсах
  • Ситуація гонки на прикладі конкурентного запису в map
• sync.Mutex для синхронізації даних
• sync.Atomic
3 тиждень. Робота з динамічними даними і продуктивність

Навчіться поводитися з динамічними даними і працювати з JSON.
  • Розпаковуємо JSON
  • Нюанси роботи з JSON
  • Пакет reflect-Працюємо з динамікою в рантаймі
  • Кодогенерація-програма пише програму
  • Система бенчмарків Go
  • Профілювання через pprof
• sync.Pool
* Покриття коду тестами
• XML
4 тиждень. Основи HTTP

запустіть веб-сервер, обробите запити і отримаєте дані. а ще навчитеся збирати метрики продуктивності з працюючого сервера.
  • Слухаємо TCP-сокет з використанням пакету net
  • Обслуговування HTTP-запитів
  • Робота з параметрами запитів
  • Обслуговування статичних даних
  • Завантаження файлів форми
  • Http-запити в зовнішні сервіси
  • Тестування HTTP-запитів і відповідей
  • Inline-шаблони і шаблони з файлів
  • Виклик методів і функцій з шаблонів
  • Профілювання через pprof
  • Пошук витоку горутин
  • Трасування поведінки сервісу
  • Приклад з telegram-ботом
5 тиждень. Анатомія веб-сервісу

ознайомитеся з найпоширенішими компонентами при розробці веб-сервісів: роутери, веб-сервери, фреймворки і утиліти.
  • Основні компоненти веб-сервісу
  • Основи middleware для HTTP
• Context value
  • Обробка помилок
  • Роутери-gorilla/mux, httprouter
  • Продуктивний веб-сервер fasthttp
  • Парсинг параметрів в структуру і валідація
  • Фреймворк Beego
  • Фреймворк gin
  • Стандартний пакет log, zap, logrus
• gorilla/websocket
  • Компільовані шаблони
  • Утиліта dep
6 тиждень. SQL і NoSQL

Навчіться працювати з основною функцією веб-сервера-витяг і завантаження даних.
  • database/sql і mysql
  • GORM-застосування reflect а для SQL
• sql-injection
* Memcached-приклад з тегованим кешем
• Redis
• Message broker - RabbitMQ
• Document store - MongoDB
7 тиждень. Микросервисы

Микросервисы – популярний патерн боротьби зі складністю. У Go мікросервіси можна робити відразу з коробки. А ще ви познайомитеся з фреймворком gRPC.
• Що таке мікросервіс, плюси і мінуси
  • Мікросервіси всередині моноліту
  • net/rpc і формат gob
• net/http/jsonrpc
  • Формат серіалізації protobuf
  • Робимо сервіс на gRPC
  • Просунута робота з gRPC
  • Стрімінг повідомлень
  • Балансування навантаження і використання Consul
  • grpc-gateway-отримуємо доступ до grpc-сервісів через HTTP
  • Swagger-генеруємо клієнт і сервер з документації до апі
8 тиждень. Сервіс в роботі

зрозумієте, як конфігурувати і моніторити сервіси, а також інтегруєте код на C в Go.
* Локальний конфіг-flags, json, ldflags
• Віддалений конфіг, використовуємо Consul
  • Навіщо потрібен моніторинг і що моніторити
  • Відправка таймінгів в зовнішню систему
  • Пакет Unsafe
  • CGO-інтеграція коду на Сі
• go vet, gometalinter
https://privatelink.de/?https://golangcourse.ru
 
Угорі