Imprimir Post

Programação Orientada a Objetos com C# (Parte 7.2) – Namespace

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.

Interface - 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 7.1 para 7.2 (vide título) e assim seguirá (7.3, 7.4…) mediante a necessidade de conclusão.

Palavras-chaves:

Interface, Encapsulamento, Herança, Polimorfismo, Propriedades, Classe.

Texto:

Mãos a Obra

Com o conceito de Namespace devidamente esclarecido (vide post anterior) e a abertura inicial sobre um campo de visão prático, o próximo passo na Programação Orientada a Objetos com C# será continuar a explorar o assunto Namespace.

Namespace - Relembre - Link Post Anterior

Adendo

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

  • Windows 10 Pro;
  • 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.

Resultado da Execução da Aplicação

Apesar das últimas alterações realizadas serem concentradas na atenção e acompanhamento das classes Unitario, UnicoComum e UnicoEstudante, a Classe Descendente EspecialDesempregado e sua regra particular não foi descartada do exemplo anterior em sua exibição final.

Sabe-se portanto que, a classe Program é executada logo que se inicia a Aplicação, em seguida as classes Unitario, EspecialDesempregado, UnicoComum e UnicoEstudante são executadas herdando da Classe Bilhete.

Além disso, UnitarioUnicoComum UnicoEstudante  estão vinculadas ao cumprimento de um contrato estabelecido pela Interface IBilhete.

Interface IBilhete:

Namespace - Interface - Classe Bilhete

Interface – Classe Bilhete

Classe Pai ou Base Bilhete:

Namespace - Classe Bilhete

Classe Bilhete

Classes Descendentes Unitario, EspecialDesempregado, UnicoComum UnicoEstudante, que herdam de Bilhete. Destas Classes, UnitarioUnicoComum UnicoEstudante utilizam-se da Interface IBilhete :

Namespace - Classe Unitario x Classe EspecialDesempregado x Classe UnicoComum x Classe UnicoEstudante

Classe Unitario x Classe EspecialDesempregado x Classe UnicoComum x Classe UnicoEstudante

Classe Program:

Namespace - Classe Program

Classe Program

Resultado após a execução:

Namespace - Microsoft Visual Studio 2010 Ultimate – Execução da Aplicação (Janela de Console)

Microsoft Visual Studio 2010 Ultimate – Execução da Aplicação (Janela de Console)

Considerações Finais:

Esta publicação visa apresentar o cenário disposto até este momento da série de uma forma ampla, com os elementos:

  • IBilhete: Interface (Contrato);
  • Bilhete: Classe Pai ou Classe Base;
  • Unitario, EspecialDesempregado, UnicoComum UnicoEstudante: Classes Descendentes (herdam de Bilhete);
  • Unitario, UnicoComum UnicoEstudante: Classes que utilizam-se da Interface (IBilhete);
  • Program: Classe de Execução.

O resultado correto da execução, revela a importância dos elementos e a organização que compõe a estrutura de cada envolvido. Porém, no que diz respeito a Namespace, diante temática Sistema Metropolitano estabelecida ao longo da série e, prevendo o crescimento contínuo de uma Aplicação, é possível notar que não há relevância alguma manter o nome padrão intitulado Console Application.

“Haveria portanto a possibilidade de alterar o Namespace padrão de maneira a organizar os elementos de um projeto de forma correta?”

A dúvida acima foi criada de maneira proposital, propondo a mudança de Namespace, quando o cenário em questão proporciona a utilização desta técnica.

É 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 sétima parte da série: Programação Orientada a Objetos com C# será apresentado o terceiro post sobre Namespace, 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/2016/10/19/programacao-orientada-a-objetos-com-c-parte-7-2-namespace/