Programação Dart - Funções

As funções são os blocos de construção de código legível, sustentável e reutilizável. Uma função é um conjunto de instruções para realizar uma tarefa específica. As funções organizam o programa em blocos lógicos de código. Uma vez definidas, as funções podem ser chamadas para acessar o código. Isso torna o código reutilizável. Além disso, as funções facilitam a leitura e a manutenção do código do programa.

Uma declaração de função informa ao compilador sobre o nome de uma função, tipo de retorno e parâmetros. Uma definição de função fornece o corpo real da função.

Sr. Não Funções e descrição
1 Definindo uma função

Uma definição de função especifica o que e como uma tarefa específica seria realizada.

2 Chamando uma função

Uma função deve ser chamada para executá-la.

3 Funções de retorno

As funções também podem retornar valor junto com o controle, de volta para o chamador.

4 Função Parametrizada

Os parâmetros são um mecanismo para passar valores para funções.

Parâmetros Opcionais

Parâmetros opcionais podem ser usados ​​quando os argumentos não precisam ser passados ​​obrigatoriamente para a execução de uma função. Um parâmetro pode ser marcado como opcional anexando um ponto de interrogação ao seu nome. O parâmetro opcional deve ser definido como o último argumento em uma função.

Temos três tipos de parâmetros opcionais no Dart -

Sr. Não Parâmetro e Descrição
1 Parâmetro Posicional Opcional

Para especificar parâmetros posicionais opcionais, use colchetes [].

2 Parâmetro nomeado opcional

Ao contrário dos parâmetros posicionais, o nome do parâmetro deve ser especificado enquanto o valor está sendo passado. A chave curly {} pode ser usada para especificar parâmetros nomeados opcionais.

3 Parâmetros opcionais com valores padrão

Os parâmetros de função também podem receber valores atribuídos por padrão. No entanto, esses parâmetros também podem ser valores passados ​​explicitamente.

Funções recursivas de dardo

A recursão é uma técnica para iterar uma operação fazendo com que uma função se chame repetidamente até chegar a um resultado. A recursão é melhor aplicada quando você precisa chamar a mesma função repetidamente com diferentes parâmetros de dentro de um loop.

Exemplo

void main() { 
   print(factorial(6));
}  
factorial(number) { 
   if (number <= 0) {         
      // termination case 
      return 1; 
   } else { 
      return (number * factorial(number - 1));    
      // function invokes itself 
   } 
}

Deve produzir o seguinte output -

720

Funções Lambda

As funções lambda são um mecanismo conciso para representar funções. Essas funções também são chamadas de funções de seta.

Sintaxe

[return_type]function_name(parameters)=>expression;

Exemplo

void main() { 
   printMsg(); 
   print(test()); 
}  
printMsg()=>
print("hello"); 

int test()=>123;                       
// returning function

Deve produzir o seguinte output -

hello 123