Visão Geral
Este Curso Go Language Essentials, combina a facilidade de programação de uma linguagem interpretada e tipada dinamicamente com a eficiência e segurança de uma linguagem compilada estaticamente tipada.
Se você está aproveitando o Go para criar aplicativos no trabalho ou por conta própria, participar deste curso o ajudará a entender como o Go funciona e a ser imediatamente mais produtivo.
Se você está construindo uma equipe usando Go, esta será uma ótima oportunidade para colocar sua equipe na mesma página e falar o mesmo idioma.
Objetivo
Após realizar este Curso Go Language Essentials você será capaz de:
- Aprenda os elementos estruturais básicos de um programa Go
- Aprenda a usar os tipos básicos, tipos agregados, tipos de referência e interfaces
- Aprenda estratégias de tratamento de erros
- Aprenda a compor tipos e implementar encapsulamento
- Aprenda a criar um método (função receptora) em uma struct
- Aprenda como e quando usar ponteiros
- Aprenda a usar o tipo de interface para impor um contrato
- Aprenda como e quando usar funções anônimas
- Aprenda a enviar e receber dados usando canais
- Aprenda técnicas de simultaneidade e sincronização
- E muito mais!
Publico Alvo
- Programadores que desejam aprender a linguagem de programação Go
Materiais
Inglês/Português/Lab Prático
Conteúdo Programatico
Introduction to Go
- Learn the features and origins of Go
- Install and configure Go on your OS
- Choose an IDE
- Review Go Packages
Getting Started
- Learn the basic components of the Go language
- Examine several common programming tasks
- Utilize the built-in library
- Examine keywords and names
- Learn to declare variables and constants
- Review variable lifetime and scope
- Define and use pointers
Working with Basic Data Types
- Examine and work with numbers, strings, and bools
- Understand the importance of UTF-8 in Go
- Use standard packages to manipulate strings
- Use the constant generator
Arrays, Slices, and Maps
- Use and understand the relationship of arrays and slices
- Extend slices using the built-In append function
- Learn slicing techniques
- Create hash tables using the map data type
Structs
- Create user defined data types using struct
- Use struct literal syntax
- Learn the rules of comparing structs
- Learn the mechanism of struct embedding
- Learn how and when to use anonymous fields
Functions
- Declare and call a function
- Return multiple values from a function
- Define a variadic function
- Create a recursive function
- Define and use function objects
- Define and use anonymous functions
- When and how to use deferred functions
Error Handling
- Error-handling strategies
- Dealing with errors: panic and recover
Methods
- Review object-oriented programming
- Use structs to build software models
- Use methods with a pointer receiver
- Data hiding and encapsulation
Interfaces
- Create and use interfaces to enforce a contract
- Understand interface satisfaction
- Interface type assertions and switches
I/O and networking
- Work with common file operations
- JSON serialization and marshalling
- Http client and server implementations
- Build a simple http server
- REST: Post and retrieve JSON
Goroutines and Concurrency
- The need for concurrency
- Overview of Goroutines and Channels
- Use buffered and unbuffered channels
- Use select to wait on multiple channels
- Use a mutex to guard access to a critical section
TENHO INTERESSE