Linguagem de programação introdução v1

  • 1,585 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,585
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Linguagem de programação Introdução a OO Carlos Melo
  • 2. Sumário• Cenários de desenvolvimento;• Histórico da OO;• Conceitos de OO;• Análise e Desenvolvimento;• Bancos de dados OO;
  • 3. CENÁRIOS DEDESENVOLVIMENTO
  • 4. Cenário Estrutural• Foco principal nas funções depois nos dados, informações desagrupadas;• As ideias e necessidades dos usuários normalmente não ficam claras: • Quais são suas necessidades para o sistema; • Preciso de um sistema que controle todas vendas dos produtos;
  • 5. Cenário Estrutural• Validação com o usuário • É muito difícil para o usuário leigo entender um modelo ER; • Problemas se descobrem durante a implementação
  • 6. Cenário Estrutural• Excesso de documentação ou nenhuma;• Cronograma apertado, prazos estourados, dificuldade de reaproveitamento de código;• Cliente insatisfeito;• Horas infindáveis de manutenção corretiva;• Custo elevado de projeto.
  • 7. Cenário OO• Foco principal nos objetos do mundo real, com suas funções e dados agrupados.• Deve-se fazer o levantamento de requisitos já pensando nos objetos do mundo real;• Facilita o entendimento por parte do programador das necessidades do usuário; • O que vamos controlar; • Nossos Carros.
  • 8. Cenário OO• Diminuição de tempo e custo de desenvolvimento;• Atendimento da demanda gerada pela evolução tecnológica;• Reutilização do código, facilidade de manutenção.
  • 9. HISTÓRICO DA ORIENTAÇÃO AOBJETOS
  • 10. Histórico• 1967: Simula – introduz os primeiros conceitos de OO;• 1972: SmallTalk;• 1980: C++ linguagem híbrida, derivada da linguagem C;• 1983: Ada criada para uso militar nos EUA;• 1984: Eiffel primeiras características formais de OO;• 1986: Object Pascal;• 1995: JAVA – Linguagem puramente orientada a objetos;• 1995: Várias linguagens agregando conceitos de OO
  • 11. Java• O Java é ao mesmo tempo um ambiente e uma linguagem de programação desenvolvida pela Sun Microsystem, Inc;• Trata-se de mais um representante da nova geração de linguagens orientadas a objetos e foi projetado para resolver os problemas da área de programação cliente/servidor;• Os aplicativos em Java são compilados em um código de bytes independente de arquitetura.
  • 12. Java• Esse código de bytes pode então ser executado em qualquer plataforma que suporte um interpretador Java.• O Java requer somente uma fonte e um binário e, mesmo assim, é capaz de funcionar em diversas plataformas, o que faz dele um sonho de todos que realizam manutenção em programas.
  • 13. Evolução da OO• Não se configura como mudança de paradigma abrupta. Evoluiu de ideias já manifestadas há algum tempo.• Programação orientada a objetos é uma evolução da programação estruturada;• Na programação estruturada temos funções(procedures ou rotinas) e dados (normalmente globais) que podem ser acessados por qualquer função.
  • 14. Evolução da OO• Na programação orientada a objetos, temos funções agregadas aos dados em uma unidade chamada objeto, ou seja, os dados não estão separados das funções, mas sim unidos as mesmas.• A tendência para os próximos anos é que a maioria das linguagens de programação sejam baseadas em objetos.
  • 15. CONCEITOS DE ORIENTAÇÃO AOBJETOS
  • 16. Bases da orientação a objetos• Na compreensão do mundo, os seres humanos utilizam- se de três ,métodos de pensamento: • Diferenciação; • Distinção entre todo e parte; • Classificação; • Vê a orientação a objetos, como técnica para a modelagem de sistemas, utiliza esses métodos para diminuir a diferença semântica entre a realizade e o modelo.
  • 17. Exemplo Computador docente aluno Utiliza Ensina
  • 18. Conceitos• Objetos e Instâncias;• Classes;• Atributos;• Métodos;• Visibilidade de atributos e operações;• Mensagens;
  • 19. Objetos• Um objeto denota uma entidade, seja ela de natureza física, conceitual ou de software. • Entidades físicas: um carro, umas pessoa, uma casa; • Entidade conceitual: um organograma de uma empresa; • Entidade de software: um botão em uma GUI
  • 20. Objetos• É uma entidade capaz de reter um estado(informação/atributos/propriedades) e que oferece uma série de operações (comportamentos/métodos) ou para examinar ou para afetar o estado;• Um objeto é um conceito, uma abstração, algo com limites e significados nítidos em relação ao domínio de uma aplicação;• Objetos facilitam a compreensão do mundo real e oferecem uma base real para a implementação em computador.
  • 21. Objeto• Um objeto é algo que tem: • Estado; • Comportamento; • Identidade;
  • 22. Estado de um objeto• O estado de um objeto representa uma das possíveis condições em que um objeto pode existir;• O estado é representado pelos valores das propriedades de um objeto em um determinado instante;• O estado do objeto usualmente muda ao longo do tempo;• Exemplo (Aluno): • Nome: Carlos; • Matrícula: 229844130; • Entrada: 2011.2.
  • 23. Comportamento de um objeto• O comportamento determina como um objeto pode responder a interações mediante a ativação de operações decorrentes de mensagens recebidas de outros objetos;• O comportamento e determinado pelo conjunto de operações que o objeto pode realizar;• Controle acadêmico; • Entrada: Carlos;• Solicita entrada • Retorna:2011.2
  • 24. Identidade de um objeto• Cada objeto tem um único identificador, mesmo que seu estado seja idêntico ao de outro objeto; • Carlos (objeto); • Controle acadêmico(sistema que esta sendo construído); • Entrada(estado); • Matrícula 229844130 (propriedade do aluno) • Lista de semestres cursados(pode ser um objeto!!) • Semestre corrente(mesmo que semestre)
  • 25. Objeto• Um objeto de software mantém seu estado em uma ou mais de suas variáveis. Ele implementa seu comportamento através de seus métodos.• Método é o mesmo que função ou procedimento.• Por definição: Um objeto é um pedaço de software que possui variáveis (estado) e métodos (comportamento).
  • 26. 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 diferentes instâncias possuem seu próprio estado.
  • 27. Objeto• Cada instância de pessoa possui um estado diferente em particular.• 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 da sua idade, altura e peso, por exemplo.• A ideia é que cada objeto seja responsável por seus dados (estado) e seja capaz de realizar as próprias operações que lhe foram atribuídas (comportamento).
  • 28. Mensagem• Um objeto por si só não significa muito em um sistema. Para ter algum sentido e valor esses objetos precisam interagir e comunicar-se entre si.• Os objetos se comunicam por meio de mensagens. Quando um objeto A quer se comunicar com um objeto B é enviada uma mensagem de A para B.
  • 29. Mensagem• Enviar uma mensagem significa executar um método.• Então, se A envia uma mensagem para B, podemos entender como o objeto A executando um método do objeto B.As mensagens são compostas por três partes:1. Objeto a quem a mensagem é endereçada2. Nome do método a ser chamado3. Parâmetros que o método recebe
  • 30. 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, combustí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, definindo um modelo único com características iguais para todos os carros a serem produzidos.