Golang Func

Golang Func
As funções são essenciais na linguagem de programação Go. Em poucas palavras, uma função é um bloco de código em um programa que permite aos desenvolvedores reutilizar um pedaço de código mais de uma vez em um programa. Depois de definir uma função, você pode reutilizar seletivamente o pedaço de código em outras partes do programa sem redefinir o código.

As funções são muito úteis quando você precisa salvar a memória e melhorar a legibilidade do seu código. Isso ocorre porque as funções ajudam a organizar o código em seções modulares, aumentando a legibilidade.

Este guia ensinará como trabalhar com funções na linguagem de programação Go. Isso ajudará você a entender como você pode definir suas próprias funções em seus programas.

O básico

Como mencionado, uma função é um pedaço de código ou declarações que executam uma tarefa específica. Go vem com uma coleção de funções predefinidas de sua biblioteca padrão.

Um exemplo de uma função popular é o FMT.Função println ().

Vamos entender como podemos criar funções personalizadas.

Vá definir função

Comece criando uma pasta chamada funções e navegue nela.

$ mkdir funções
$ CD Functions/

Crie um arquivo “Funções.vá "para armazenar o código -fonte:

$ Touch Functions.ir

Para definir uma função em Go, começamos com a palavra -chave Func. Em seguida, é seguido pelo nome da função e um par de parênteses. Se uma função aceitar parâmetros, você pode passá -los dentro dos parênteses. Lembre -se de que uma função não pode ter parâmetros.

Por fim, crie o bloco de funções (o que a função faz) dentro de um par de aparelhos encaracolados.

A sintaxe geral para definição de função é como mostrado:

func function_name (params)
// Bloco de função

Vamos criar uma função chamada Greet:

Func Greet ()

O código acima agirá como a definição de nossa função.

Em seguida, criaremos um bloco de funções que contém o código de que operação a função executa.

FUNC GREET ()
fmt.Println ("oi, todos!")

Aqui, a função imprime a string “Oi, todos!”Para o console.

Agora que nossa função é definida e completa, precisamos garantir que ela execute a tarefa definida.

Função de chamada

Para que a função execute as ações definidas, precisamos chamá -la. Em Go, a execução começa na função principal. Portanto, precisamos chamar nossa função greet () dentro da função principal.

Considere o código de exemplo abaixo:

Pacote principal
importar "fmt"
func main ()
saudar()

FUNC GREET ()
fmt.Println ("oi, todos!")

Agora podemos executar nosso programa como:

$ go run funções.ir

Depois de executar o programa, devemos ver a saída da função greet () como:

::saída
Oi pessoal!

Nota: em Go, a função principal diz ao compilador onde a execução do programa começa. Você só pode ter uma função principal em um programa e não aceita nenhum argumento ou retorna qualquer valor.

As funções podem ser mais complexas do que a que usamos acima. Você pode usar outros recursos de Golang, como loops, funções aninhadas, declarações condicionais e muito mais.

Por exemplo, a função abaixo usa duas variáveis ​​para comparar o valor máximo.

Pacote principal
importar "fmt"
func main ()
max ()

func max ()
var var1 = 10
var var2 = 100
var maximum = 0;
Se var1> var2
máximo = var1
else maximum = var2
fmt.Println (máximo)

No exemplo acima, definimos uma função chamada max. Em seguida, definimos 3 variáveis ​​e comparamos se o var1 é maior que o var2. Se verdadeiro, definimos o valor máximo como 1; caso contrário, defina o valor máximo como var2.

Em seguida, imprimimos o valor da variável máxima usando o método println. Depois de chamarmos a função max (), devemos ver o maior valor como:

$ go run funções.ir
100

GO Parâmetros de função

Mencionamos que você pode criar parâmetros para suas funções. Vejamos como podemos criar funções com parâmetros.

Um parâmetro refere -se a uma unidade definida que atua como um argumento que uma função pode aceitar.

Para definir parâmetros em uma função, passe -os dentro dos parênteses durante a definição da função.

Em Go, começamos pelo nome do parâmetro e seu tipo de dados. A sintaxe para definir uma função com parâmetros é como mostrado:

func function_name (param1 data_type, param2 data_type)
// Corpo de função

Vamos repensar a função máxima e ver como podemos incluir parâmetros para tornar a função mais flexível.

Podemos definir dois parâmetros que atuam como os dois valores para comparar. Isso permite que o usuário passe quaisquer valores personalizados durante a chamada de função.

A função resultante é como mostrado:

func max (a int, b int)
var máximo = 0
Se A> B
máximo = a
outro
Máximo = b

fmt.Println (máximo)

Neste exemplo, a função máxima leva dois valores, compara -os e retorna o mais alto. Na função principal, podemos chamar a função max () como:

func main ()
Max (100,20)

Observe que podemos passar valores personalizados do que codificá-los manualmente dentro da função.

Dica: se você tiver um conjunto de parâmetros do mesmo tipo, poderá pular definir o tipo de dados para cada um e simplesmente defini -lo como um tipo.

Por exemplo, como os parâmetros das funções máximos são int, podemos defini -los como:

func max (a, b int)
// Corpo de função

Valor de retorno de funções GO

Se uma função pode aceitar um valor, certamente pode devolver um. Em Golang, podemos retornar um valor de uma função usando a palavra -chave de retorno. Quando o compilador encontra a palavra -chave de retorno, ele sai das funções e retorna à função do chamador.

Você deve especificar o tipo de dados do valor de retorno durante a declaração de função. A sintaxe é como mostrado:

func function_name (params data_type) return_value_data_type
// Corpo de função

Vamos modificar a função máxima para retornar o valor máximo em vez de imprimi -lo usando a função println.

func max (a, b int) int
var máximo = 0
Se A> B
máximo = a
outro
Máximo = b

Retorne o máximo

No exemplo acima, você percebe que adicionamos um tipo de retorno de int na declaração de função. Em seguida, usamos a palavra -chave de retorno para retornar o valor da variável máxima.

Como a função retorna um valor, podemos passar esse valor para outras funções, como mostrado no exemplo abaixo:

func main ()
// saudar()
// Max (100.20)
fmt.Println ("O valor máximo:", Max (250, 188))

O exemplo usa o valor de retorno da função máxima e a passa para a função Println.

GO também permite que você retorne vários valores de uma função. Por exemplo, podemos retornar uma string e int da mesma função que mostrou:

func max (a, b int) (int, string)
// Corpo de função
Retorne o máximo, "um tipo de retorno de string"

No exemplo acima, retornamos um valor int e string.

Conclusão

Este guia explorou como trabalhar com funções na linguagem de programação Go. Continue praticando para se tornar um programador melhor.