Desenvolvimento em Go - curso 130.000 rublos. da GeekBrains, treinamento de 15 meses, Data: 10 de junho de 2023.
Miscelânea / / November 29, 2023
Para iniciantes
Golang é ótimo como primeira linguagem de programação. Possui uma sintaxe simples e documentação curta. Você não precisa de formação técnica para dominá-lo.
Desenvolvedores com experiência
Muitas empresas estão migrando para Go e procurando profissionais bilíngues. Se você conhece PHP, C/C++, JavaScript, Ruby ou outras linguagens, você pode ganhar mais.
Noções básicas de programação
Programa, variáveis e tipos de dados
• Fluxogramas e ramificações
• Ciclos
• Funções
• Matrizes
HTML/CSS. Curso interativo
- Familiarize-se com as tecnologias web e crie um site simples.
Conceitos básicos em desenvolvimento web
• Noções básicas de linguagem de marcação de documentos HTML
• Noções básicas da linguagem de estilo de documentos CSS
• Pseudoclasses e pseudoelementos, layout de tabela
• Formação de um modelo de bloco, layout de bloco
• Trabalhar com maquete de design em formato PSD
• Marcação de site e introdução ao Bootstrap
• Padrões da Web e ferramentas de suporte
Curso básico em vídeo sobre Git
- Familiarize-se com o Git, um sistema de controle de versão que os programadores utilizam ativamente em projetos educacionais e comerciais.
Introdução ao Git
• Instalando e configurando Git
• Comandos básicos de terminal
• Trabalhando com repositórios
• Gerenciamento de arquivos de repositório
• Histórico de mudanças
• Trabalhando com ramificações de repositório
• Publicar um repositório
• Fusões de filiais
• Gerenciamento de versões
• Crie uma solicitação pull
• Operações complexas
• Trabalhando com repositórios Fork
Curso Básico Javascript
- Aprenda programação JavaScript para criar páginas web simples.
Noções básicas da linguagem JavaScript
• Operadores básicos
• Loops, matrizes, estruturas de dados
• Objetos
• Introdução ao DOM
• Manipulação de eventos
• Aula de oficina
• Funções anônimas, fechamentos
Linux. Posto de trabalho
- Os aplicativos Backend Go são frequentemente implantados no Linux. Você se familiarizará com os recursos do Linux e poderá desenvolver com mais eficiência.
Instalando o sistema operacional Linux
• Personalização da interface de linha de comando
• Gerenciamento de usuários e grupos
• Processos, carregamento do sistema operacional
• Dispositivo de sistema de arquivos. Arquivo e diretório
• Introdução aos scripts bash. crontab e em agendadores de tarefas
• Gerenciar pacotes e repositórios. Noções básicas de segurança de rede
• Introdução ao docker
Ir. Nível 1
- Familiarize-se com as ferramentas básicas e os principais tipos de dados do Go e aprenda como criar aplicações de console simples.
Recursos e história da linguagem Go. Trabalhando com playground e noções básicas de conjunto de ferramentas.
• Tipos de dados básicos. Noções básicas de trabalho com o subsistema de E/S do sistema operacional. Noções básicas de estruturação de aplicativos Go
• Operadores e estruturas de controle, funções básicas
• Tipos de dados complexos: matrizes, fatias e mapas
• Tipos de dados complexos: estruturas, funções e métodos
• Tipos de dados complexos: ponteiros
• Interfaces. Erros. Noções básicas de tratamento de erros
• Noções básicas de configuração de aplicativos
• Trabalhando com o sistema de arquivos
• Fundamentos de testes de aplicativos Go
• Consulta final sobre o curso. Respostas sobre perguntas
Ir. Nível 2
- Conhecer opções de implementação de computação paralela num modelo competitivo, aprender a gerir dependências e escrever aplicações assíncronas simples.
Geração e tratamento avançados de erros e trabalho com pânico. Chamadas de função adiadas
• Compilação cruzada em Go e aprofundamento na cadeia de ferramentas
• Trabalhando com dependências externas
• Simultaneidade, parte 1. Goroutines e canais
• Simultaneidade, parte 2. Noções básicas de tipos de dados do pacote de sincronização
• Simultaneidade, parte 3. Agendador Goroutine, condição de corrida e verificação de sua presença
• Reflexão e geração de código na linguagem Go.
• Noções básicas de trabalho com a biblioteca padrão Go. Preparação para o projeto do curso
Melhores práticas para desenvolvimento de aplicativos Go
- Conheça as práticas modernas de desenvolvimento em Go e aprenda como implementá-las em seus projetos. Eles são úteis no desenvolvimento de qualquer aplicação: desde utilitários simples até serviços altamente carregados.
Tratamento de erros de serviços de terceiros e sinais do sistema operacional
• Exploração madeireira
• Práticas de teste avançadas
• Consulta
• Princípios para estruturar aplicações Go
• Linters: nível avançado
• Crie aplicativos e automatize ações repetitivas
Desenvolvimento de back-end. Nível 1
- Aprenda a desenvolver aplicações em Go, projetar e dar suporte ao seu backend. Ao final do curso, crie um projeto - um encurtador de links.
Noções básicas de rede
• Design de API HTTP e RESTful
• Implementação e teste de manipuladores HTTP
• Selecionando um roteador e bibliotecas. Middleware. Contexto da solicitação.
• Prática, parte 1. Implementação de Servidor
• Prática, parte 2. Implementando um aplicativo da Web
• Recursos de dockerização de aplicações Go.
• Crie e implante o aplicativo. CI/CD
Base de dados
- Você aprenderá como funcionam os bancos de dados relacionais, poderá criar os seus próprios, modificar sua estrutura e gerenciar dados usando SQL.
Introdução à Teoria do Banco de Dados Relacional
• Conceitos básicos de estrutura de banco de dados
• Definição de dados, operações básicas de dados
• Amostragem de dados, agregação de dados
• Consultas aninhadas e UNION
• JUNTAR
• Capacidades SQL avançadas
• Funções de janela, índices, trabalho em um cliente gráfico
Postgres para desenvolvedores Go
- Experimente ser administrador de banco de dados, aprenda a trabalhar com o sistema de gerenciamento PostgreSQL e implemente-o em seus projetos.
Introdução ao PostgreSQL: ferramentas básicas, comparação com outros SGBDs
• Trabalhar com estrutura de banco de dados, CTE, analisando requisitos na busca de dados
• Análise de execução de consultas e indexação de dados
• Usando PostgreSQL em um aplicativo Go
• Estrutura de aplicativos, testes, migrações, ORM
• Níveis de isolamento, simultaneidade, limpeza, replicação
Observabilidade e otimização
- Aprenda como analisar o desempenho do programa e otimizá-lo usando criação de perfil, rastreamento e cache.
Monitoramento + alerta
• Registro + Tratamento de erros
• Criação de perfil e rastreamento
• Otimização e cache
Desenvolvimento de back-end. Nível 2
- Aprenda a implantar e gerenciar aplicativos em Kubernetes, familiarize-se com vários protocolos de API e princípios de design de microsserviços.
Princípios de interação entre microsserviços
• JSON-RPC e gRPC
• GráficoQL
• Execução de aplicações Go no Kubernetes. Configuração Monitoramento. Depuração.
• Cluster Kubernetes
• Filas
• Teste funcional/BDD
• Noções básicas de segurança de aplicativos Go
Preparando-se para uma entrevista com um desenvolvedor Go
- Crie um currículo atraente e prepare-se para uma entrevista técnica. Você pode criar seu próprio portfólio GitHub de seus projetos.
Criando um portfólio GitHub
• Habilidades interpessoais de um desenvolvedor Go
• Passar em uma entrevista técnica
• Consulta de portfólio
Desenvolvimento em equipe de um projeto de microsserviço
- Você aprenderá como conduzir o desenvolvimento em um ambiente em rápida mudança: aprenderá a trabalhar com grandes tarefas dos clientes, desmontá-las em partes e priorizá-las corretamente. Implemente seus próprios microsserviços no trabalho em equipe.
Colabore no design de serviço. RFCs e documentos de design
• Práticas de colaboração com Git. Revisão de código
• Testes conjuntos e implantação de serviços
• Responsabilidade do desenvolvedor. Listas de verificação de prontidão para produção
• Prática de plantão. Incidentes e post-mortems
• Três consultas sobre o seu projeto
Sergei Gonchar
16.07.2022 G.
Agora estou estudando para me tornar um desenvolvedor Go - no geral não é ruim. Até agora não me arrependo de ter adquirido seus cursos. Os programas são interessantes e úteis, mas webinars de 2 horas não são muito agradáveis. Eu preferiria vídeos pré-gravados de 20 a 30 minutos com tarefas. Às vezes, em alguns cursos você pode sentir um aumento acentuado na dificuldade dos tópicos e tarefas. Você faz as aulas, faz a lição de casa, tudo parece claro...