dtan.xyz

GoExpert
Size: 44.02 GiB
Uploaded: 7/15/2025, 5:42:34 PM
Tags:
Trackers: 50

File List (302 files)

📄Eventos/Go intensivo 2/Go_HTTP,_APIs_e_Deployment_+_Oportunidade_para_se_aprofundar_com.mp4
536.01 MiB
📄1-Introdução/2-O que é a Linguagem GO.mp4
184.43 MiB
📄1-Introdução/3-Histórico.mp4
154.87 MiB
📄1-Introdução/4-O que GO NÃO é.mp4
143.22 MiB
📄1-Introdução/5-Motivações.mp4
137.95 MiB

Description

Go Expert O Curso Go Expert tem o objetivo de te tornar uma pessoa desenvolvedora Go que é capaz de trabalhar em grandes empresas recebendo os melhores salários.

Além dos principais fundamentos da linguagem, o curso também apresentará as principais necessidades técnicas que as empresas possuem e como resolvê-las com a Golang.

Desenvolvimento de APIs, Testes automatizados, Multithreading, Comunicação entre microsserviços, Clean Architecture, Processos de deploy utilizando Docker e Kubernetes fazem parte da ementa.

Introdução a linguagem

  • Sobre a linguagem e seu histórico * Motivações
  • Sobre a linguagem e seu histórico
  • Instalação
  • Configuração do ambiente no VSCode

Implementações

  • gRPC
  • GraphQL
  • Upload de arquivos na AWS S3
  • Command line com cobra CLI
  • Unit of Work
  • Dependency injection com Google Wire
  • Manipulação de eventos (Event Dispatcher, Handlers, etc)
  • Integração com RabbitMQ
  • Gerenciamento de configuração com Viper

Desenvolvimento de APIs

  • Retomando conceitos de HTTP Server e Mux
  • Criando Endpoints
  • Apresentando principais frameworks e roteadores
  • Trabalhando com “chi”
  • Middlewares
  • Autenticação e tokens JWT
  • Documentando API com Swagger

Go e Clean Architecture

  • Iniciando com Clean Architecture
  • Pontos importantes sobre arquitetura
  • Keep options opened
  • Use Cases
  • Limites arquiteturais
  • Input vs Output
  • DTOs
  • Entities
  • Desenvolvendo camada de domínio
  • Criando Use Cases
  • Criando adaptador para banco de dados
  • Criando adaptador para o RabbitMQ
  • Servindo endpoints HTTP
  • Consumindo mensagens com RabbitMQ
  • Criando CLI para iniciar a aplicação
  • Go Doc

Foundation

  • Primeiros passos
  • Trabalhando com tipagem forte
  • Arrays, Slices, Maps
  • Laços de repetição, condicionais
  • Ponteiros
  • Funções, Structs, Métodos, Interfaces e Generics
  • Trabalhando com packages
  • Módulos
  • Módulos privados
  • Instação de pacotes
  • Compilando projetos Go
  • Workspaces

Concorrência e Multithreading

  • Entendendo conceitos de concorrência e paralelismo
  • Como Go aborda concorrência e schedulers
  • Iniciando com Go Routines
  • Contadores atômicos
  • Trabalhando com Channels e buffers
  • Utilizando recurso de Select
  • Wait Groups
  • Mutex
  • Previnindo race conditions
  • Desenvolvimento de workers utilizando channels
  • Load Balancer

Pacote Context

  • Entendendo o conceito de um context
  • Armazenando e recuperando valores
  • Background, Timeout, Deadline e Cancelations
  • Context na prática

Testes automatizados

  • Iniciando com testes no Go
  • Formas de asserção
  • Pacotes úteis
  • Trabalhando com Mocks
  • Fuzzes e testes de mutação
  • Testes em batch
  • benchmarking
  • Criando suite de testes com Testify
  • Testes End-to-end

Pacotes importantes

  • Manipulação de arquivos
  • Chamada HTTP
  • Trabalhando com objetos Json
  • Defer
  • Desenvolvendo um sistema Busca CEP
  • Trabalhando com HTTP
  • Criando servidores HTTP
  • Entendendo Multiplexers
  • Servidor de arquivos
  • Trabalhando com templates dinâmicos
  • Aprofundando em HTTP utilizando Context

Banco de dados

  • Entendendo como Go trabalha com banco de dados
  • Estabelecendo conexão e realizando primeiras operações
  • Boas práticas de segurança
  • Realizando operações utilizando Context
  • Go puro vs ORM
  • Trabalhando com GORM
  • Migrations
  • SQLC: Geração automática de Queries

Comments

No comments found.

Other Links