Ementa:
Neste curso, iremos ter o privilégio de conhecer uma das linguagens que
mais cresce no mundo: Go!
Cada vez mais vemos depoimentos de diversas empresas na migração de seus sistemas para linguagem Go, cada dia cresce o número de adeptos que utilização esta linguagem que vem tornando-se um fenômeno quando o assunto é resolver problemas de backend.
A linguagem foi desenvolvida pelo Google e lançada em 2009, feita para a criação de
programas de alto desempenho e produtividade, nasceu para resolver problemas de escalabilidade usando concorrência. Go quebra os paradigmas de linguagens de programação existentes, inovou
criando as Goroutines, e quebrando o conceito de Threads, o que acabou gerando diversas
polêmicas na comunidade de Developers.
Vamos entrar neste universo Go para desmistificar e facilitar todo entendimento quando o assunto é programação concorrente.
O Workshop é 100% prático, mão na massa. Iremos abordar: Go, Docker,
RabbitQM, Prometheus e Postgresql, para desenvolver no API e transformá-
la em microservices e fragments services.
Vamos abusar do XP (eXtreme Programming) e quebrar a BANCA.
Objetivo:
- Vamos desenvolver do zero uma API usando uma das linguagens mais fascinantes na atualidade;
- Entender de forma granular as etapas que envolve o desenvolvimento de uma API REST;
- Entender o ambiente e universo Go e desmistificar a linguagem;
- O Workshop é 100% prático, mão na massa;
- Iremos abordar os problemas e desenvolver a solução usando Go;
- Iremos usar Docker para criar nossas imagens e subir nossos containers de nossas APIs;
- Vamos abordar os partners de concorrência para resolver nossos problemas de forma concorrente;
- Vamos criar APIs para alto desempenho e alta escalabilidade;
- Vamos utilizar RabbitQm como gerenciador de Fila para fazermos nossos consumer e publisher em Go;
- Vamos criar nossos middlewares nativos;
- Aprender as melhores práticas e o jeito Go de fazer as coisas.
- Vamos abusar do XP (eXtreme Programming)
Público Alvo:
- Estudantes de tecnologia;
- Desenvolvedores;
- Desenvolvedores interessados em migrar para Go;
- Desenvolvedores que desejam obter experiência 100% prática quando o assunto é Go;
- Desenvolvedores em geral que desejam aprofundar seus conhecimentos em Go;
- Entusiastas de DevOps;
- Para empreendedores que querem criar um produto digital e entender atrás das cortinas como isto é possível;
- Profissionais que querem criar um MVP (o produto mínimo viável), conhecer os bastidores de como uma equipe de desenvolvimento trabalha;
- Entusiastas em geral que gostam de conhecer novas tecnologias e novas linguagens de programação.
Pré-requisito:
- Notebook;
- Conhecimentos básicos em sistemas operacionais Linux;
- Conhecimentos básicos em qualquer linguagem de programação;
- Conhecimentos básicos de programação;
- Linux instalado;
- Git Instalado;
- Docker instalado;
- Editores mais usados [Vim-Go, Sublime, Vscode].
Método Usado:
- Treinamento presencial e 100% em português, com instrutor especialista em Go;
- Laboratórios práticos e autoguiados (hands-on, o próprio aluno deverá aplicar os conceitos e fazer os labs em sala);
- Curso com duração de 1 dia, sendo 8 horas de aula;
- O aluno receberá descontos exclusivos para os próximos treinamentos;
- Todo o material em Português.
Programação:
Horário | Conteúdo |
---|
08:00 à 08:40 |
Café da Manhã + Apresentação
|
09:00 à 12:30 |
Laboratório I
-
Introdução Conteúdos e Fundamentos da Linguagem - Golang / Instalação / $GOPATH and Workspace / Go Mod;
-
Vamos reforçar nossos conhecimentos em: Json / Marsha, Unmarshal + Structs;
-
Criando nosso Docker-Compose.yaml, Dockerfile e fazendo Docker Build de nossos services;
- Docker Postgres;
- Docker Prometheus;
- Docker de nossa API Go;
- O que é instrumentar API usando Go?;
- Criando nossos Middleware;
- Middlewares [ Logger, Auth, Prometheus, Maxclient];
- O que é instrumentar API? Instrumentar nossa API Go usando Prometheus;
- Clean Code, Arquitetura Hexagonal e organizando toda nossa base de códigos para criar nossa API;
-
[POST] /api/v1/auth [usando JWT];
- [POST/GET] /api/v1/ping.
|
12:30 às 13:00 |
Intervalo |
13:00 à 15:00 |
Laboratório II
-
[POST] /api/v1/user [Validando com Token gerado pelo JWT];
-
[PUT] /api/v1/user;
-
[GET] /api/v1/user;
-
[GET] /api/v1/user/{:uuid};
- [DELETE] /api/v1/user/{:uuid};
- Gerando logs com Logrus e colocando tudo em Stdout.
|
15:00 às 17:40 |
Laboratório III-
Falando de Microservices, fragments services;
- Como implementar microservices da nossa arquitetura?;
- Vamos implementar nosso RPC em nosso service e comunicar entre services;
- Subindo Docker RabbtiQM para gerenciar FILAS;
- Vamos reforçar nossos conceitos sobre Goroutines e seus Pattern;
- Criando uma nova versão do endpoint da nossa API [PUT] /user e salvando os JOBs na FILA;
- Criando nosso Worker Go para consumir a FILA e salvar no banco de dados.
|
17:40 |
Finalização + Brindes + Camisetas |
Data:
Local:
- Rua Professor Eugênio Murilo Rubião, 222
Redes Sociais:
Telegram:
+ Informações: