


























Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Os melhores documentos à venda: Trabalhos de alunos formados
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Comunidade
Peça ajuda à comunidade e tire suas dúvidas relacionadas ao estudo
Descubra as melhores universidades em seu país de acordo com os usuários da Docsity
Guias grátis
Baixe gratuitamente nossos guias de estudo, métodos para diminuir a ansiedade, dicas de TCC preparadas pelos professores da Docsity
Apostila sobre os conceitos de orientação a objetos na programação
Tipologia: Notas de estudo
1 / 34
Esta página não é visível na pré-visualização
Não perca as partes importantes!
Daniel Destro do CarmoSoftech Network Informáticadaniel@danieldestro.com.br
O que é OO?
Orientação a Objetos
Técnicas de programação tradicionais
As técnicas de programação tradicionais, como por exemplo a “decomposição funcional”, leva o desenvolvedor a decompor o sistema empartes menores (funções), criando um emaranhado de inúmeras funçõesque chamam umas às outras.
Geralmente não há separação de conceitos e responsabilidades, causando dependências enormes no sistema, dificultando futurasmanutenções no código do programa.
Não existe muito reaproveitamento de código, ao contrário, muitas vezes se tem muito código duplicado.
Orientação a Objetos
O paradigma da Orientação a Objetos, ou Programação Orientada a Objetos (POO ou OOP), eleva a programação e o desenvolvimento desistemas para um novo patamar.
A OO é um mecanismo moderno que ajuda a definir a estrutura de programas baseada nos conceitos do mundo real, sejam eles reais ouabstratos.
A OO permite criar programas componentizados, separando as partes do sistema por responsabilidades e fazendo com que essas partes secomuniquem entre sí, por meio de mensagens.
Essas partes do sistemas são chamadas de
Orientação a Objetos
A OO é mais intuitiva e fácil de aprender do que as técnicas tradicionais, pois foca o problema em conceitos do mundo real.
Dentre as vantagens que a OO proporciona, podemos destacar:
Objeto
Objetos são a chave para se compreender a tecnologia orientada a objetos. Você olha ao seu redor e tudo o que vê são objetos: carro, mesa,janela, livro, pessoa, etc.
Os objetos do mundo real têm duas carecterísticas em comum:
e
Estado O estado de um objeto revela seus dados importantes. Por exemplo, uma pessoa tem: idade, peso, altura, cor de cabelo, cor da pele.
Comportamento O comportamento são as ações que aquele objeto pode exercer ou executar. Por exemplo, uma pessoa pode: andar, falar, ouvir, pular.
Objeto
Esses objetos podem ser tanto objetos concretos (carro, livro, nota fiscal), quanto conceitos abstratos (conta corrente, venda, pessoa jurídica).
Na Orientação a Objetos, os objetos do mundo real são modelados e representados no mundo computacional, ou seja, dentro do sistema, pormeio de objetos de sotware.
Cada objeto deve ser conhecido, bem definido e ter seu limite e um significado dentro do sistema.
Os objetos de software, assim como os objetos do mundo real, também possuem estado e comportamento.
Objeto
Um sistema pode conter um ou inúmeros objetos ativos. Cada objeto ativo no sistema em particular também é chamado de instância. As diferentesinstâncias possuem seu próprio estado.
O exemplo abaixo mostra várias intâncias de pessoas. andar
20 anos
Maria
1,68 m
58 Kg
falar
pular
andar
35 anos
João
1,75 m
80 Kg
falar
pular
andar
42 anos
José
1,80 m
78 Kg
falar
pular
Objeto
Cada instância de pessoa possui um estado diferente em particular, como visto na última figura.
Porém, cada instância, além do estado, também possui seus métodos (comportamento) que operam sobre o próprio estado. Em outras palavras,para pular, cada pessoa vai fazer uma determinada força dependendo dasua idade, altura e peso, por exemplo.
A idéia é que cada objeto seja responsável por seus dados (estado) eseja capaz de realizar as própriasoperações que lhe foram atribuídas(comportamento).
andar
20 anos
Maria
1,68 m
58 Kg
falar
pular
Mensagem
Enviar uma mensagem significa executar um método.Então, se
envia uma mensagem para
, podemos entender como o
objeto
executando um método do objeto
As mensagens são compostas por três partes:
Controle Remoto
TV
ligar
Classe
No mundo real freqüentemente percebemos vários objetos de um mesmo tipo. Por exemplo: seu carro é um dos muitos carros existentes no mundo.
Usando a terminologia OO, dizemos que um carro em particular é uma instância da classe de objetos conhecida como carros.
Os carros, em geral, possuem estado (cor, potência do motor, combutível) e comportamento (ligar, acelerar, brecar, mudar marcha) em comum.
O estado de cada carro é independente e pode ser diferente do estado dos outros carros. Cada carro pode ter uma cor diferentes, por exemplo.
A partir dessas semelhanças, os fabricantes de veículos tiram vantagem disso para padronizar a construção de carros de um mesmo tipo, definindoum modelo único com características iguais para todos os carros a seremproduzidos.
Classe
Na classe são definidas as variáveis e implementados os métodos.Os objetos são criados a partir de suas classes.A cada objeto criado o sistema aloca memória para o novo objeto e suas variáveis.
ligar
cor
Carro
combustível
potênciado motor
brecar acelerar
API pública(métodos)
placa
Comumente fazem confusão entre classes e objetos. Lembre-se que classe define as características comuns e os objetos são instâncias dessasclasses, com estado próprio.
Abstração
Abstração é a habilidade e a capacidade de se modelar conceitos, entidades, elementos, problemas e características do mundo real, de umdomínio do problema em questão, levando-se em conta apenas os detalhesimportantes para a resolução do problema e desprezando coisas que nãotêm importância no contexto.
Se pensarmos no conceito de “conta corrente” bancária e abstraírmos este conceito, podemos identificar detalhes comuns, como o número daconta, número da agência e saldo; e operações como débito em conta,depósito e extrato da conta. Basicamente essas são as características deconta corrente para todos os bancos, apesar de um ou outro banco ter umapolítica de descontos de taxas etc.