Funções

Não importa a linguagem que você esteja estudando, uma das primeiras coisas que você irá aprender será a Função.

Funções são essenciais[bb]quando uma tarefa tem que ser executas muitas vezes. Dessa forma, você consegue diminuir o código, tornando-o mais fácil para manutenções futuras.

Imagine uma situação que um determinado código deve ser executado. Tomarei como exemplo a formatação de um código[bb] qualquer.

Dim codigo As String

codigo = ObjetoOndeEstaOCodigo

While codigo.Length < 6

codigo = "0" & codigo

End While

campo.Text = codigo

Como podem ver no trecho acima, um determinado código deve ser formatado em algum ponto da execução da aplicação.

O que o código acima faz: formata um código numérico com 6 dígitos. Por meio de repetição condicional.

Agora imagine que este mesmo código deve ser executado em um outro ponto. Você pode pensar: “É um código pequeno, vou copiar e colar.”. NÃO!

Por menor que seja o trecho você não pode pensar em copiar e colar. E se você precisar colocar esse código em mais quatro lugares. Em uma manutenção futura, terá que encontrar esses seis lugares para alterar.

Então vamos ver como seria em uma função:

Public Function FormataCodigo(ByVal Codigo As String) As String

While Codigo.Length < 6

Codigo = "0" & Codigo

End While

Return Codigo

End Function

'CHAMANDO A FUNÇÃO

MessageBox.Show(FormataCodigo(CampoComOCodigo.Text))

O parâmetro “Codigo” ´passado à função, é código que será formatado.

Para incrementar a sua função, você poderia adicionar mais um parâmetro, para determinar o número de dígitos que seria retornado, por exemplo.

Public Function FormataCodigo(ByVal Codigo As String, ByVal NumDigitos As Integer) As String
While Codigo.Length < NumDigitos
Codigo = "0" & Codigo
End While

Return Codigo
End Function

Veja que no lugar do “6” foi adicionado o parâmetro “ NumDigitos” do tipo inteiro.

Agora vamos um pouco mais a fundo na declaração da função.

  • Public Function: Informa que é uma função públic, ou seja, pode ser acessada em qualquer ponto do projeto.
  • FormataCodigo: Nome da função. Dado por você.
  • ByVal Codigo As String, ByVal NumDigitos As Integer: Os parâmetros que serão passados à função. Codigo do tipo Texto e NumDigitos do tipo Inteiro. A palavra reservada ByVal indica a forma que o parâmetro será passado, mas isso é para outro post.
  • As String: O tipo de dado que será retornado pela função.
  • Return: indica o que será retornado pela função.

A declaração acima é válida para Visual Basic.

Para C#, por exemplo, a declaração seria:

public String FormataNumero(String Codigo) {

while (Codigo.Length < 6){

Codigo="0" + Codigo;

}

return Codigo;

}

Importante ressaltar que uma tarefa que seja muito especifica e que muitos fatores influenciam pode ser feita sem a utilização de funções. É uma questão de bom senso.

É isso, nos vemos em uma próxima!