Programa o orientada a objetos
Download
1 / 21

Programação Orientada a Objetos - PowerPoint PPT Presentation


  • 76 Views
  • Uploaded on

Programação Orientada a Objetos. Sistemas de Informação – 2ª Série. Histórico / Programação. Sistemas de Informação – 2ª Série Programação Orientada a Objetos. mudanças para compensar maior complexidade dos programas;

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Programação Orientada a Objetos' - lexiss


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Programa o orientada a objetos
Programação Orientada a Objetos

Sistemas de Informação – 2ª Série


Hist rico programa o
Histórico / Programação

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • mudanças para compensar maior complexidade dos programas;

  • no inicio os computadores eram programados por instruções binárias (cabos ENIAC);

  • Assembly (baixo nível);

  • Fortran (primeira de alto nível);

  • Anos 60, programação estruturada;

  • POO;


Hist rico poo simula
Histórico / POO / Simula

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • 1966

  • Noruega

  • baseada em ALGOL 60

  • simulações de sistemas c/ grande número de objetos;

  • serviu de base para TAD – Tipos Abstratos de Dados;

  • serviu de base para SmallTalk;


Hist rico poo smalltalk
Histórico / POO / SmallTalk

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Desenvolvida no Centro de Pesquisas da Xerox;

  • década de 70;

  • incorporação do princípio dos objetos ativos:

    • reação a

    • mensagens que ativam os

    • comportamentos

  • objetos deixam de ser apenas dados (sendo apenas manipulados);

  • objetos agora são parte integrante da solução (a computação pode residir nos mesmos);

  • a mais popular.


Hist rico poo outras
Histórico / POO / Outras

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • C++, baseada em C;

  • Objetive-C, também baseada em C;

  • Pascal orientado a objetos;

  • Eiffel;

  • TOOL, no Brasil


Hist rico poo comercializa o
Histórico / POO / Comercialização

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Smalltalk-80 -> ParcPlace empresa da Xerox;

  • Digitalk -> Digitalk.


Hist rico poo x estruturada
Histórico / POO x Estruturada

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • POO

    • Simulação de modelos de sistemas:

      • Automação de escritórios;

      • Animação gráfica;

      • Informática educativa;

      • Instrumentos virtuais;

      • Editores de texto;

      • Bancos de dados;

      • etc.


Hist rico poo x estruturada1
Histórico / POO x Estruturada

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Estruturada

    • Resolução de problemas através de algoritmos:

      • Busca;

      • Otimização e resolução numérica de equações.


POO

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Envolve conceitos comuns ao cotidiano:

    • objetos e atributos;

    • todos e partes;

    • classes e membros;

  • Pessoas empregam métodos de organização:

    • Diferenciação – separação dos objetos através de suas características – árvore e computador;

    • Distinção – separação dos objetos do todo e da parte – carro e motor;

    • Formação de classes de objetos – separação entre bicicletas e motocicletas;


POO

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • É implementada pelo envio de mensagens aos objetos;

  • Os objetos respondem ao estímulo de uma mensagem desencadeando uma seqüência de execução (computação reside no objeto);

  • Durante a computação desencadeada por uma mensagem, o objeto respectivo pode enviar outra(s) mensagem(ns) para outro(s) objeto(s);

  • A execução de um programa só termina quando todas as mensagens enviadas tiverem as respectivas computações terminadas.


Poo x extruturada
POO x Extruturada

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Geralmente onde se emprega a POO também se emprega a Estruturada e vice-versa;

  • POO pode trazer mais facilidades;

  • Programadores mais experientes estão mais acostumados com a programação estruturada (resistência a mudança de paradigma);

  • Não confundir POO com Prog. Orientada a Eventos;


Poo x extruturada1
POO x Extruturada

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • O zelador pega a chave e abre a porta

  • Estruturada: Pensa-se automaticamente em como o zelador faz para abrir a porta utilizando a chave (cada verbo vira um procedimento);

  • POO: Pensa-se inicialmente nos objetos zelador, porta e chave, nas suas características (atributos) e nas ações que podem realizar (métodos) (cada substantivo vira um objeto);

  • Pode-se perceber a dificuldade de um programador acostumado a programação estruturada em mudar para POO.


Vantagens da poo
Vantagens da POO

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Sensível redução no custo de manutenção do software;

  • Aumento na reutilização de código;

  • Programação Estrutura também pode apresentar estas características, tudo depende de como se programa, assim como também é válido dizer que não basta utilizar-se da POO para garantir os itens acima.


Orienta o a objetos conceitos
Orientação a Objetos - Conceitos

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Objetos: qualquer indivíduo, lugar, coisa, evento, tela, relatório ou conceito que seja aplicável ao projeto do sistema. Os objetos possuem dados e funcionalidades que definem seus comportamentos. São instâncias de suas respectivas classes.

  • Classe: Uma categoria de objetos semelhantes. Uma classe é, na verdade, uma planta baixa a partir da qual os objetos são criados.

  • Instância: Sinônimo de objeto.

  • Instanciar: Criar uma instância. Quando criamos um objeto dizemos que o instanciamos a partir de uma classe.


Orienta o a objetos conceitos1
Orientação a Objetos - Conceitos

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Atributos: Valores guardados por um objeto ou uma classe. Um atributo é basicamente um único dado ou informação. Os atributos podem ser simples, como um número inteiro, ou podem ser objetos complexos, como um endereço ou um cliente. Cada objeto tem os seus próprios atributos que podem diferenciar em conteúdo de um objeto para outro.

  • Métodos: Procedimentos que um objeto ou classe realizam. Um método é semelhante a uma função ou procedimento em uma programação estruturada. Pode-se ter o mesmo método implementado de várias maneiras, o que irá diferenciá-los é a mensagem passada para o objeto.


Orienta o a objetos conceitos2
Orientação a Objetos - Conceitos

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Abstração: A definição da interface de uma classe (o que ela sabe e faz)

  • Encapsulamento: O ocultamento da implementação do que uma classe/objeto sabe ou faz, sem que seja dito como é feito.

  • Mensagens: Informações que são trocadas entre os objetos.

  • Interface: Projeto de comunicação entre a classe/objeto e o mundo exterior. Grupo de mensagens que um objeto ou classe vai responder.

  • Herança: Permite que tiremos vantagens das similaridades entre classes representando relacionamentos do tipo “é” ou “é semelhante”.


Orienta o a objetos conceitos3
Orientação a Objetos - Conceitos

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Superclasse: Quando a classe “B” herda as características da classe “A” dizemos que “A” é uma superclasse de “B”.

  • Subclasse: No exemplo acima dizemos que “B” é uma subclasse de “A”.

  • Herança Simples: Quando a classe herda características de uma única classe.

  • Herança Múltipla: Quando uma classe herda características de mais de uma classe.

  • Classe Concreta: Uma classe que possui objetos instanciados a partir dela.


Orienta o a objetos conceitos4
Orientação a Objetos - Conceitos

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Classe Abstrata: Uma classe que não possui objetos instanciados a partir dela.

  • Redefinição: Termo usado para indicar que redefinimos atributos e/ou métodos nas subclasses para proporcionar um comportamento um pouco ou totalmente diferente.

  • Sobrecarga: Sinônimo de Redefinição.

  • Hierarquia de Classes: Um conjunto de classes relacionados por meio de herança.

  • Raiz: A classe superior em uma hierarquia.


Orienta o a objetos conceitos5
Orientação a Objetos - Conceitos

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Persistência: Diz respeito ao armazenamento permanente dos objetos em disco.

  • Objeto Persistente: Um objeto que é salvo em um armazenamento permanente, tornando-o recuperável para uso futuro.

  • Objeto Transitório: Um objeto que não é persistente.

  • Associação: Relacionamento entre objetos. Por exemplo, clientes COMPRAM produtos.

  • Cardinalidade: Indica quantos objetos estão envolvidos em cada lado de um relacionamento.


Orienta o a objetos conceitos6
Orientação a Objetos - Conceitos

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Agregação: Indica que um objeto é composto por outros. Exemplo: Um carro é composto por vários itens (pneus, peças, assessórios)

  • Colaboração: Para que determinados objetos funcionem adequadamente, precisam de uma maior interação com outros objetos. Exemplo: Para que um carro aumente a velocidade, o motor tem que aumentar a rotação, porém para que isto ocorra o acelerador tem que responder ao estímulo do usuário.

  • Acoplamento: Nível de dependência de um objeto em relação a outro, principalmente quanto aos detalhes de implementação. Quanto menor melhor.


Orienta o a objetos conceitos7
Orientação a Objetos - Conceitos

Sistemas de Informação – 2ª Série

Programação Orientada a Objetos

  • Coesão: Quanto maior o esforço para explicar uma classe, menor a coesão. As classes devem ser explicadas da forma mais simples possível, ou seja, quanto maior a coesão, melhor.

  • Polimorfismo: Diz respeito a possibilidade de tratar classes diferentes como se fossem a mesma, ou seja, a própria linguagem se encarrega de saber qual é a classe em questão.


ad