Funções Flashcards
Como criar uma função?
Para criar uma função eu preciso de () e {}
Ou
função1 () => função2
Qual a vantagem de usar função?
Se eu altero algo dentro da função irá modificar em todos os lugares em que essa função é chamada.
Qual a diferença entre função síncrona e assíncrona?
a síncrona vai direto, a assíncrona tem uma chamada para o banco de dados, uma chamada para uma API por exemplo.
Maioria das chamadas é uma coisa que tem internet, bluetooth , wifi, é algo que dependa de um tempo para informação chegar. Ou seja, irá “parar” o código para pegar informação.
O que é erro de stack overflow?
(estouro de pilha). É um erro de memória. Em que a função é chamada recursivamente tantas vezes que a pilha de chamadas fica cheia e não há espaço disponível para alocar novos dados na memória.
O que é uma função recursiva?
É quando a função chama ela mesma.
O que é uma função de callback?
É quando eu passo uma função como parâmetro,
O que é função void?
Função tipo null, tipo nada, tipo nenhum.
Crie uma função de soma usando arrow function
int soma (int a, int b) => a + b;
void main(){
print(soma(5,5);
}
crie uma função de soma usando return
int soma(int a, int b){
return a + b;
}
Crie uma função de soma com void.
void soma (int a, int b){
print(a + b);
}
void main(){
soma (5, 5);
}
O que é mock?
É um objeto ou função simulada, um exemplo é função assíncrona, quando o back-end não está pronto para fazer a comunicação com API posso simular para testar.
Dê exemplo de função assíncrona
Future <void> functionAsync() async {
print("Chamou API");
await Future.delayed(Duration(seconds: 10));
print("API respondeu com sucesso");
}
void main(){
print("Chamou");
functionAsync();
print("Processando a função");
}</void>
Como saber que uma função é assíncrona?
Além de demorar um pouco comparado com a síncrona, no código irá ter as palavras async e await.
Ao criar função sem retorno de valor por que é importante eu colocar void primeiro e depois nomear a função?
Porque o Dart é uma linguagem fortemente tipada e se eu apenas nomear a função ela ficará dinâmica o que é ruim.
Dê exemplo de função void.
void resultado(String message) => print(message);