Aprendendo a programar

Funções

Na programação

Paula Torales Leite
Zero e Umas

--

Nos últimos dias temos aprendido muito sobre programação, já passamos por algoritmos, variáveis, estruturas de condição e estruturas de repetição. Agora vamos aprender sobre funções nas linguagens de programação. Vou passar para vocês uma explicação teórica e apresentar algumas formas de construí-las em diferentes linguagens!

Vamos aprender!

Quando estamos no nosso dia-a-dia, tendemos a repetir certas coisas, como, por exemplo, escovar os dentes. Temos um sequência de ações que executamos, podendo ser: pegar a escova, pegar a pasta de dentes, colocar a pasta na escova e começar a escovar. Podemos chamar isso de uma rotina. Imagine que vamos transformar o nosso dia em um código:

main() {
// Acordamos

var pegarEscova;
var pegarPasta;
var colocarPastaNaEscova;
var escovarDentes;
// ... janta pegarEscova;
pegarPasta;
colocarPastaNaEscova;
escovarDentes;
}

Olhando para esse pseudocódigo, notamos que, todas as vezes que formos escovar os dentes, precisaremos realizar as mesmas ações na mesma sequência. Mas será que não tem como ter rotinas dentro do nosso código?

A resposta é SIM!

Nós poderíamos colocar toda essa nossa rotina dentro de uma FUNÇÃO:

func escovarOsDentes() {
var pegarEscova;
var pegarPasta;
var colocarPastaNaEscova;
var escovarDentes;
}

Prontinho, agora temos tudo dentro de uma função, ou seja, sempre que for necessário escovarmos os dentes, a única coisa que vamos precisar fazer é chamar essa função:

main() {
// Acordamos

escovarOsDentes();
// ... janta escovarOsDentes();
}

Isso vai facilitar muito a nossa vida quando estivermos programando. Nós podemos colocar o código que precisarmos ali dentro: seja um for, uma variável, contas, etc.

Isso vai nos fornecer certas vantagens:

  • Clareza de código;
  • Reutilização;
  • Independência.

Ok, mas como podemos usar essas funções dentro dos nossos códigos, em diferentes linguagens?

Definindo uma função

A estrutura de uma função normalmente é composta por três informações: tipo de retorno, o nome da função e os parâmetros.

Tipo de retorno: se a sua função executar algum tipo de processamento ou cálculo e retorna isso, você deve especificar na função qual será o tipo desse retorno. Dentro do seu código, você provavelmente terá que usar a chamada return para informar ao compilador que aquela será a informação de retorno.

Nome da função: lembre-se de dar um nome para sua função que seja claro e objetivo.

Parâmetros: existem funções que podem precisar de algum tipo de dado que ela não possui, será aqui que você o colocará. Normalmente, é necessário especificar explicitamente, até mesmo com o seu tipo. Você vai fazer isso da mesma forma que configura variáveis locais.

Quando você for chamar essa sua função dentro do seu código, você deve fazer isso da seguinte forma:

nomeFunção(parâmentros);

Essa instrução é composta pelo nome da função, seguida pela lista de argumentos entre parêntesis.

Se a sua função tiver algum tipo de retorno, você também pode chamá-la da seguinte forma:

x = nomeFunção(parâmentros);

Assim, você já está atribuindo o resultado para uma variável.

Definições em Diferentes Linguagens

Cada linguagem tem a sua própria definição para as funções, abaixo estou apontando a forma com que as linguagens Swift, C e JavaScript executam funções.

Imagens do coletivo mostrando as diferentes formas de escrever funções.

As mudanças são, primordialmente, em relação a ordem com que as informações são colocadas. Porém, as linguagens Swift e JavaScript também necessitam de uma palavra específica que avisa que ali temos uma função.

Variáveis Locais e Globais

Para terminarmos a conversa sobre funções, precisamos entender como funcionam a declaração de variáveis nas funções. Existem duas formas que podemos fazer isso:

  • Dentro da função (local);
  • Fora de todas as funções (global).

A melhor forma de entendermos isso é em relação ao uso dessas variáveis.

Vamos dizer que você está declarando uma variável, mas se depara com a realidade de que necessitará mudar essa mesma variável em situações diferentes. Nesse caso, você deve definí-la globalmente.

Porém, se você vai usar essa variável exclusivamente dentro da função e não precisará adaptá-la no decorrer do código, você deve fazer isso localmente.

Fique atenta para quais linguagens permitem essa manipulação de variáveis e as boas práticas de cada uma.

Obrigada por ler esse artigo! Deixe um comentário abaixo se tiver alguma dúvida. Não esqueça de nos seguir aqui no Medium e nossa Newsletter, para as dicas, aulas e notícias sobre tecnologia, feito por mulheres para mulheres. Nos siga também no Instagram, para se conectar mais ainda com o Coletivo Zero e Umas!

A Paula Torales Leite é uma das mulheres que forma o Coletivo Zero e Umas! A Paula faz Ciência da Computação e, nas palavras dela “A nossa missão é buscar a força ao capacitar outras mulheres”. Ela também é apaixonada pela leitura!

Você consegue se conectar com ela no LinkedIn, Instagram, Medium, ou nos seguindo através do Instagram.

Referências

--

--

Paula Torales Leite
Zero e Umas

Escritora e Editora no incrível Medium do Coletivo Zero e Umas! ~ medium.com/zeroeumas