Simplificando a Passagem de Parâmetros para um Método

Veja uma forma elegante para evitarmos a criação de um método com muitos parâmetros, utilizando boas práticas de desenvolvimento em C#.

Já vi (e já fiz) métodos com vários parâmetros, alguns com até dezenas (esses eu só vi!) de parâmetros em sua assinatura. Isso acarreta problemas de legibilidade e manutenção futura.

Conheça o Curso de Refatoração com C# e escreva códigos mais limpos.

Para resolver isso é simples: podemos encapsular todos os parâmetros passados para o método em uma única classe (desde que os parâmetros façam parte do mesmo contexto e que cheguem ao mesmo objetivo, para que não criemos uma classe problemática).

A Listagem 1 mostra um método com muitos parâmetros em sua assinatura.

Listagem 1. Método com N parâmetros

private void Gravar(string Nome, string Endereco, string Telefone, string Bairro, string Cidade, string Estado, bool Ativo, DateTime DataCadastro) { //código }

Na Listagem 2 vemos o mesmo método, com apenas um parâmetro, que é um objeto da classe Pessoa, exibida pela Listagem 3.

Listagem 2. Método com apenas um parâmetro

private void Gravar(Pessoa objPessoa) { //código }

Listagem 3. Classe Pessoa

public class Pessoa { public string Nome { get; set; } public string Endereco { get; set; } public string Telefone { get; set; } public string Bairro { get; set; } public string Cidade { get; set; } public string Estado { get; set; } public bool Ativo { get; set; } public DateTime DataCadastro { get; set; } }

Notem na Figura 1 que é bem simples para usarmos um objeto da classe, pois ao digitarmos objPessoa.; chamamos as propriedades da classe, criadas acima.

Figura 1. Chamada das propriedades de uma classe

Dessa forma temos um método simples mais objetivo, com apenas um parâmetro.

Assim finalizo a dica rápida. Muito obrigado a todos!

Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados