Olá pessoal, neste artigo veremos os conceitos sobre Classes Parciais e um exemplo prático com elas. Acompanhem:

 Um dos recursos que temos no C# com classes é podermos dividir o código-fonte de uma classe em diversos arquivos separados. Isso é útil no aspecto de organização e controle da definição de uma classe de grande tamanho: fica mais fácil o controle da definição da classe quando a organizamos e dividimos em partes menores.

 Esta divisão é muito importante, já que uma classe pode se tornar muito grande, com diversos métodos e esta pode ser uma característica de classes altamente funcionais. Além de métodos, ela pode conter construtores, campos, propriedades, etc.

 Usamos a palavra-chave partial em cada um dos arquivos resultantes da divisão da classe para definir as partes da classe.

 Vamos criar um projeto simples do tipo Console Application, dando a ele o nome ExemploClassesParciais.

 Vá à Solution Explorer e adicione uma classe, dando a ela o nome de DadosPessoa.

 Vamos criar algumas classes parciais dentro dessa classe criada pelo Visual Studio.

 Obs: Lembrando que, neste caso, teremos uma única classe física, um único arquivo .cs. As classes parciais por sua vez são todas classes lógicas.

 Veja a codificação completa de nossa classe abaixo:

public class DadosPessoa

    {

        public partial class DadosPessoais

        {

            public string Nome = string.Empty;

            public int Idade = int.MinValue;

        }

 

        public partial class DadosPessoais

        {

            public void VerificarIdade(int Idade)

            {

                if (Idade >= 18)

                {

                    Console.WriteLine("Você é maior de idade!");

                }

                else

                {

                    Console.WriteLine("Você é menor de idade!");

                }

            }

        }

    }

 Agora vá ao Program.cs e, dentro do método Main, instancie a classe DadosPessoa e chame as propriedades e os métodos recém-criados:

DadosPessoa.DadosPessoais objDadosPessoa = new DadosPessoa.DadosPessoais();

 

            objDadosPessoa.Nome = Console.ReadLine();

            Console.WriteLine("\nSeu nome eh: \n" + objDadosPessoa.Nome);

 

            Console.WriteLine(Environment.NewLine);

 

            objDadosPessoa.Idade = int.Parse(Console.ReadLine());

            Console.WriteLine("\nSua idade eh: \n" + objDadosPessoa.Idade);

           

            Console.WriteLine(Environment.NewLine);

 

            objDadosPessoa.VerificarIdade(objDadosPessoa.Idade);

 

            Console.ReadKey();

 Aperte F5 para compilar e veja o resultado:


 Desta forma temos diversos métodos separados em classes menores. O importante a dizer é que todas estas classes se referem aos dados da pessoa, que no final é uma única classe, como mencionado anteriormente.

 O uso de classes parciais é muito útil em grandes projetos com milhares de classes pelos motivos citados no início do artigo.

 Assim finalizo o artigo. Muito obrigado a todos!

 Um abraço, e até o próximo artigo.

 Wellington Balbo de Camargo

 wellingtonbalbo@gmail.com