Imprimir Post

Programação Orientada a Objetos com C# (Parte 3.4) – Encapsulamento

Resumo:

O objetivo não se aplica a este post.

Uma vez que o conteúdo total desta série foi dividido em partes, deve-se considerar absoluto o resumo da primeira postagem até o momento presente.

Encapsulamento - Relembre - Link Primeiro Post

Este tema da série Programação Orientada a Objetos com C# irá demandar mais publicações. Sendo assim, a numeração sequencial desta parte da série passou de 3.3 para 3.4 (vide título) e assim seguirá (3.5, 3.6…) mediante a necessidade de conclusão.

Palavras-chaves:

Variáveis, Propriedades, Modificador, Acesso, Classe, Objeto.

Texto:

Mãos a Obra

Com a apresentação de Métodos que denotam seus comportamentos, através de prefixos que estabelecem a definição (set) e recuperação (get) de uma variável Encapsulada (vide post anterior), o próximo passo na Programação Orientada a Objetos com C# será dar continuidade a teoria, com o assunto Propriedades na Classe de Objeto.

Encapsulamento - Relembre - Link Post Anterior

Tendo claro o conceito de Encapsulamento, diante da estrutura aplicada até agora, nota-se sempre dentro de uma classe pública, a presença de Métodos também públicos (public) que envolvem variáveis privadas (private).

Esta sequência estrutural, em evolução a Orientação a Objetos foi simplificada com o nascimento das chamadas Propriedades.

Adendo

Para realização do Post foram utilizados os seguintes Programas:

  • Windows 7 Ultimate;
  • Microsoft Visual Studio 2010 Ultimate SP1 (Service Pack 1).

A única configuração realizada após a instalação dos programas acima, foi manter o Microsoft Visual Studio sendo executado como usuário Administrador do Sistema Operacional, a fim de evitar maiores problemas.

Declarando uma Propriedade da Classe

A declaração de Propriedades das classes em C# se estabelecem em 2 etapas:

1ª Etapa

Criação da variável que será encapsulada pela Propriedade:

  • Modificador de Acesso: determina-se o nível de acesso da Variável através dos modificadores de acesso. Evocados através das palavras-chave: public, private e protected, procedimento também empregado em classes.
  • Tipo de Variável (minúscula): é o tipo de variável declarada na classe.
  • Nome da Variável: determina-se o nome para variável que está sendo criada, que segue em sequencia ao tipo de variável. Sendo uma palavra, normalmente recomenda-se que o nome da variável inicie com sua primeira letra minúscula, concluindo a palavra em minúscula. No caso da variável conter duas palavras na elaboração de seu nome, após o final da primeira palavra, a próxima será iniciada com a letra maiúscula e terminada como minúscula (prática de notação conhecida como camelCase).

2ª Etapa

Criação da Propriedade:

  • Modificador de Acesso: determina-se o nível de acesso da Propriedade através dos modificadores de acesso. Evocados através das palavras-chave: public, private e protected, procedimento também empregado em classes.
  • Tipo de Dado (minúscula): é o tipo de dado para declaração de uma Propriedade.
  • Nome da Propriedade: determina-se o nome para a propriedade que está sendo criada. Sendo uma palavra, normalmente recomenda-se que o nome da propriedade inicie com sua primeira letra maiúscula, concluindo a palavra em minúscula. No caso da propriedade conter duas palavras na elaboração de seu nome, após o final da primeira palavra, a próxima será iniciada novamente com a letra maiúscula e terminada com minúscula (prática de notação conhecida como PascalCase). Além disso, deve-se evitar acentuação em propriedades. É importante ressaltar que a propriedade não pode ser definida para passagem de parâmetros.

A partir da chave de abertura até a chave de fechamentotem-se o chamado Corpo da Propriedade, local onde se definem os Métodos Assessores da propriedade.

Criando Propriedades na Classe de Objeto

Conforme citado, propriedades são membros das classes, declaradas entre a abertura e fechamento das chaves pertencentes a estas.

Encapsulamento - Relembre - Membros da Classe

Seguindo agora com a classe Metro, antes estabelecida, ao unificar as informações surgirá o resultado:

Detalhes da declaração da Variável:

  • Modificador de Acesso: utilizado como private, ou seja, a variável só poderá ser acessada dentro da classe Metro;
  • Int (minúscula): é o tipo de variável;
  • Velocidade (minúscula): é o nome que a variável em questão foi definida.

Detalhes da declaração da Propriedade:

  • Modificador de Acesso: utilizado como public, ou seja, poderá ser acessada por outras classes diferentes, fora da primeira citada, desde que a classe que envolva esta propriedade tenha sido declarada também como public (o exemplo de declaração acima confere);
  • Int (minúscula): é o tipo de dado da propriedade;
  • Velocidade: é o nome que a propriedade em questão foi definida.

No Corpo da Propriedade existem duas palavras-chaves, get e set, ambas são métodos, chamados de Assessores.

Os Métodos Assessores possuem a capacidade de possibilitar a definição ou recuperação da variável encapsulada por eles individualmente, no exemplo a variável velocidade (declarada na 1ª Etapa) está presente como retorno do método get e como definição no método set da Propriedade Velocidade (2º Etapa).

Além disso, é importante notar obrigatoriamente que, o arranjo para construção de uma Propriedade, exige que tanto a variável a ser encapsulada, quanto a Propriedade que encapsula a variável deverão possuir o mesmo tipo de dado (no exemplo int).

Considerações Finais:

Esta publicação visa uma básica definição teórica de Propriedades declaradas e criadas em classes de objetos. Tendo em mira a preparação de classes dispondo dos elementos e conceitos da Orientação a Objetos descritos até o momento.

É importante ressaltar que, a medida que os posts forem evoluindo, com apresentações teóricas somadas as práticas, a tendência é que o leitor vá sanando suas dúvidas e dificuldades de entendimento.

Na próxima publicação, ainda terceira parte da série: Programação Orientada a Objetos com C#, será apresentado o quinto post sobre Encapsulamento, o leitor irá conferir a continuidade do tema entre outros aspectos relevantes a este assunto.

Referências Bibliográficas:

As referências bibliográficas serão apresentadas no último post desta série.

Sobre o autor

Thiago Richard Vanicore

Thiago Richard Vanicore formou-se em análise e desenvolvimento de sistemas, possui certificação ITIL Foundation V2 e entre seus conhecimentos estão: ASP .Net (WebForms/MVC5/Web API) C#, HTML5, Html/XHtml, CSS3, JQuery, JQuey Mobile, JavaScript, Xml, Ajax, Json, Microsoft SqlServer, MySql, Firebird, Azure, Visual Studio Online, Scrum, UML, CRM, Quality Assurance, CTI (Computer Telephony Integration) MPSBR (Melhoria de Processos do Software Brasileiro).

Link permanente para este artigo: http://linksinergia.com.br/2015/08/24/programacao-orientada-a-objetos-com-c-parte-3-4-encapsulamento/