TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Materia E Exercicos

Artigo: Materia E Exercicos. Pesquise 860.000+ trabalhos acadêmicos

Por:   •  26/8/2013  •  2.715 Palavras (11 Páginas)  •  351 Visualizações

Página 1 de 11

Faculdade Anhanguera de Anápolis

Graduação Tecnológica em Análise e Desenvolvimento de Sistemas

Linguagem de Programação Comercial

Aula 04 – Revisão de Fundamentos de Análise Orientada a Objetos: Conceitos de objetos, classes, atributos e métodos.

Referência: http://msdn.microsoft.com

1. A importância dos objetos

No mundo do .NET, objetos são fundamentais e o desenvolvedor deve entendê-los, por um simples motivo: tudo, isto mesmo, tudo, é objeto em .NET. Mesmo strings ou inteiros (integer) são objetos. Tente por exemplo, compilar o código a seguir. Apesar de não obter auxílio do IntelliSense ao digitar “.” (ponto) após o inteiro 3, e portanto não ser possível ver uma lista de métodos disponíveis, o código é perfeitamente aceitável em .NET, e irá compilar e executar sem problemas.

// Em C#:

string teste = 3.ToString();

Baseando-se nestes fatos, pode-se então dizer que objetos são realmente importantes, e o desenvolvedor precisa realmente entendê-los para ter fluência na leitura e escrita de código em .NET.

2. Qual a vantagem?

Outra pergunta frequente é sobre a vantagem em se programar utilizando objetos. Qualquer pessoa ou empresa que vive da criação de software sem dúvidas não fica contente ao ver-se escrevendo código similar infinitamente, gastando tempo e recursos na programação de rotinas que já foram criadas anteriormente, mas que pela falta de uma metodologia apropriada, não podem ser reutilizadas ou customizadas para suprirem necessidades específicas de cada cenário. Resumindo, as principais vantages da POO são o reuso de código e a capacidade de expansão do mesmo.

Neste momento ainda não começamos a dissecar os conceitos da POO, e por isso é natural que as vantagens da POO não sejam tão aparentes.

3. Os alicerces da POO

Qualquer linguagem orientada a objetos deve oferecer suporte aos seguintes conceitos da POO:

• Abstração

• Encapsulamento

• Herança

• Polimorfismo

A incapacidade de uma linguagem em suportar qualquer um destes conceitos a desqualifica como uma linguagem orientada a objetos. Sendo estes os alicerces da POO, vamos dissecar cada um deles a seguir

4. Abstração

Abstração pode ser definida como a capacidade de representar cenários complexos usando termos simples.

Pode-se tomar um exemplo da vida real para ilustrar o conceito: um carro é uma abstração de um veículo que um indivíduo pode utilizar com o objetivo de mover-se de um ponto a outro. No dia-a-dia, ninguém dirá: “Vou abrir a porta daquele veículo movido a combustível, entrarei, me sentarei, darei a partida no motor, pisarei na embreagem, engatarei a primeira marcha, acelerarei, controlarei a direção em que o carro irá se mover utilizando o volante”. Tamanha explicação não se faz necessária pois todo o conceito daquilo foi abstraído para algo que conhecemos como “carro”. Apesar de um carro ser algo bastante complexo, basta dizer “vou usar o meu carro para ir ao trabalho amanhã”, e qualquer pessoa entenderá o recado.

Da mesma forma, imagine a confusão para qualquer pessoa entender a seguinte frase: “Quando abro aquele programa em meu computador, surge uma tela que tem várias caixas retangulares, normalmente brancas, nas quais eu posso clicar dentro e começar a digitar. Algumas dessas caixas já trazem algo escrito, e outras aparecem completamente vazias”. Seria muito mais fácil substituir toda esta explicação apenas dizendo “O programa tem uma tela com diversos TextBox”. Mais uma vez, o complexo objeto que se parece com uma caixa retangular, e permite ao usuário digitar dentro dela (além de possuir outros atributos e ações), foi sabidamente abstraído para a palavra TextBox. O mesmo ocorre com botões de comando, caixas de seleção, grupos de opção, etc. Todos eles são objetos complexos abstraídos para simples termos que todo desenvolvedor utiliza quando precisa referenciar a tais objetos.

Além de objetos como aqueles que possuem representação visual (TextBox, Button, Form, etc.), existem também objetos que são criados em muitas aplicações com o intuito de abstrairem objetos complexos da vida real, como por exemplo Pedido, Cliente, Produto, e muitos outros. Mas veremos exemplos destes objetos mais adiante.

Neste ponto é importante compreender a diferença entre classe e objeto. Quando mencionado que algo complexo foi abstraído para algo conhecido como TextBox, este algo é uma classe. Uma classe é um modelo para algo que deve ser criado. Por exemplo, quando alguém vai fazer um bolo de chocolate, pega-se uma “Receita para Bolo de Chocolate”, que será usada como um modelo para o bolo que será criado. De forma análoga, a receita é uma classe, e o bolo é um objeto.

Uma classe não é utilizada diretamente. Ninguém come a receita de bolo. A classe é utilizada somente para criar objetos baseados nela, e são os objetos que serão realmente utilizados. Deste modo, não utiliza-se a classe TextBox diretamente, e sim os objetos criados a partir daquele classe (caso membros estáticos ou compartilhados venham à mente do leitor, no último parágrafo desta seção procuro esclarecer uma confusão que pode surgir com o conceito). A Figura 1 ilustra este conceito. No lado esquerdo da figura vê-se um modelo da classe TextBox, listando alguns de seus membros, como as propriedades Text, Location, Size, e alguns métodos como Focus e Copy. Ao lado direito, vê-se um Form que faz uso de objetos baseados na classe TextBox.

Por definição, afirma-se que um objeto é a instância de uma classe. Deste modo, na Figura 1 pode-se ver que o Form possui três instâncias da classe TextBox. TextBox é um exemplo de classe disponível nativamente no .NET Framework. Em muitos casos é necessário criar classes que não existem no framework, como por exemplo uma classe Produto. Criar classes é algo muito simples tanto em VB.NET como em C#. O código a seguir mostra a sintaxe necessária em ambas as linguagens.

// Em C#:

public class Produto

{

}

...

Baixar como (para membros premium)  txt (17.2 Kb)  
Continuar por mais 10 páginas »
Disponível apenas no TrabalhosGratuitos.com