Vinicius Campelo
Vinicius Campelo23/02/2024 17:52
Compartilhe

Funções em C#

  • #Programação para Internet
  • #C#
  • #Clean Architecture

Neste artigo vou escrever sobre funções em C# como as funções podem facilitar o seu dia a dia e organizar modularizar seus projetos.


Em um dia corrido deparamos com várias situações uma delas e ver bastante código em apenas uma estrutura de bloco. Isso e comum até hoje para quem está aprendendo ou para quem programa em linguagem estruturada como o C ou COBOL até mesmo quando precisamos de algo rápido, porém, isso pode ser uma grande dor de cabeça no futuro pois a manutenibilidade pode arrastar-se por dias ou até meses. No mais, a separação em funções e uma questão de reaproveitamento esse e o verdadeiro viés da função.


Bem mais o que é uma função exatamente?

Segundo (GADO Wesley, 2022) Uma função é um conjunto de comandos que pode ser separado por um “bloco” de código visando o processamento de uma tarefa específica, onde esta função recebe parâmetros e retorna um valor. Segundo essa explicação devemos entender que uma função tem que seguir os padrões de projeto e o uso de código limpo (clean code). No entanto se essa função faz mais de "uma coisa" é se você pode extrair outra função dela a partir de seu nome então dizemos que essa função não segue um padrão de código limpo.


Outro autor importante (MARTIN, Robert C, 2011) diz que: “As funções devem fazer uma coisa. Devem fazê-la bem. Devem fazer apenas ela”.

Então devemos dizer que essas funções devem ser:

  •   Pequenas (enxutas);
  •   Espertas (aqui entra em análise e complexidade de algoritmos, comportamento assintótico de funções);
  •   Os blocos dentro de instruções if, else, while devem ser de no máximo uma ou duas;
  •   Verificar se todas as instruções dentro da função estão no mesmo nível de abstração;
  •   O código ser lido de cima para baixo (Regra Decrescente);
  •   Ter nomes descritivos e extensos (são melhores que pequenos e enigmáticos);
  •   Usar as mesmas frases, substantivos e verbos nos nomes de funções;
  •   Nos parâmetros (evite mais de três parâmetros) somente se necessário.


Um exemplo pratico e criar uma função que calcula o fatorial de um número, porém ela soma, subtrai divide e multiplica e ao invés de chamar “Fatorial” tem um nome fora do contexto e caso precise fazer uma adição o que fazer. Poderíamos criar uma outra função chamada calculadora! Isso é uma breve explicação.

Exemplo de montagem de uma função:

<Visibilidade> <tipo de retorno> <nome da funcao>(<parametros>)
{
  codigo aqui
}

Conclusão:

Percebemos que as funções têm uma grande importância na criação de uma classe auxiliando em um código limpo diminuindo a manutenção e o desgaste sendo escalável, organizado coeso elegante, limpo. Isso leva a um produto confiável e de fácil manutenção.

Referência bibliográfica:

GADO, Wesley. Modularização: Funções e Procedimentos. Blog da Treinaweb, 2022. Disponível em: https://www.treinaweb.com.br/blog/modularização-funcoes-e-procedimentos. Acesso em 23 de fevereiro de 2024.


MARTIN, Robert C. et al. Código Limpo: habilidades práticas do Agile Software. Rio de Janeiro: Alta Books, 2011.

Compartilhe
Comentários (0)