Visão Geral
Este é um curso de pesquisa de alto nível para aqueles que precisam de uma compreensão da linguagem e dos conceitos de programação Go, mas não estão planejando fazer nenhuma programação Go ou são programadores novatos. Esse público incluiria desenvolvedores de outras linguagens que precisam de um conhecimento de alto nível de Go, testadores que trabalharão com programadores Go, especialistas em documentação, líderes de equipe, engenheiros de integração e qualquer pessoa que avalie a linguagem. Este curso aborda a realidade de que nem todo mundo que precisa entender Go será um desenvolvedor Go. As palestras enfocam os conceitos usados na programação Go, com exemplos de fácil compreensão que ilustram as abordagens e técnicas que exemplificam o modo “Golang” de resolver problemas de programação e escrever código. Os laboratórios práticos têm como objetivo esclarecer e reforçar os conceitos apresentados nas aulas teóricas e são concebidos para que possam ser realizados por todos, incluindo aqueles com competências mínimas de codificação. Como Go é mais do que apenas uma linguagem, mas é um sistema integrado de desenvolvimento e construção de software projetado para projetos modernos de desenvolvimento contínuo e de grande escala, o curso também explora o ecossistema Go, incluindo o comando Go, ferramentas de construção, utilitários e bibliotecas padrão. Tudo isso é apresentado no contexto de como os desenvolvedores da linguagem pretendiam que fossem usados, demonstrado com casos de uso típicos. Comparações lado a lado do Go com outras linguagens importantes (Java, C++, C, Python, etc.) fornecem uma avaliação dos pontos fortes e fracos relativos do Go e dessas outras linguagens. O objetivo do curso não é ensinar os alunos a se tornarem programadores Go, mas fornecer uma visão geral de alto nível da estrutura, dos conceitos, das práticas e do ambiente Go da linguagem Go. O objetivo geral do curso é que os alunos sejam capazes de ler uma listagem de programas Go e entender o que o código está fazendo.