Академический Документы
Профессиональный Документы
Культура Документы
APRESENTAO
Objetivo
Material utilizado Estratgia utilizada
HISTRICO
Surgimento da Enga. de Sofware para resolver os problemas gerados pela crise do software
Projetos estourando o oramento Projetos estourando o prazo Software de baixa qualidade
As vrias tcnicas desenvolvidas nos anos 70 e 80 no resolveram o problema de produtividade e qualidade nos software
EVOLUO E MUDANAS
ANLISE E PROGRAMAO OO
Desenvolvimento de uma arquitetura mais estvel Aumento na produtividade Conhecimento pode ser compartilhado Alto grau de reusabilidade das rotinas desenvolvidas
Flexibilidade
Custo
ORIENTAO A OBJETOS
OO
Abstrao Encapsulamento Objetos Atributos Mtodos Classe Herana Polimorfismo UML Principais diagramas Diagrama de classes Relacionamento entre as classes Tipos de relacionamentos
ABSTRAO
ABSTRAO
Cada pessoa pensou em um carro Independente do modelo, cor, marca, ano, todos so carros
Roda Vidro Carroceria
Maria
Jos
Antnio
ENCAPSULAMENTO
ENCAPSULAMENTO
Ocultar aspectos no relevantes Permite alteraes sem afetar demais partes do sistema Utilizado para impedir o acesso direto ao estado (atributos) de um objeto
OBJETOS
Possui estado (informao) Oferece operaes (comportamentos) que pode verificar ou alterar o estado Pode ser classificado por categorias ou classes
OBJETOS COMPUTACIONAIS
Abstraes do mundo real Estruturas que contm as informaes e comportamentos que representam um sistema Caracterizados por Atributos e Mtodos
Atributos: propriedades de um objeto Mtodos: so as aes que um objeto pode realizar
ATRIBUTOS
Pessoa
Carro
Cachorro
ATRIBUTOS (PROPRIEDADES)
Objeto Pessoa
Propriedades Cor do cabelo Cor dos olhos Nome Idade Objeto A Preto Verde Maria 45 Objeto B Castanho Castanho Joo 34 Objeto C Branco Azul Jos 78
MTODOS
Exemplo
Pessoa
Pintar o cabelo => Altera o atributo cor do cabelo Fazer aniversrio => Altera o atributo idade Colocar lente de Contato => altera o atribulo cor do olhos
ATRIBUTOS E MTODOS
Atributos
Nome, idade, peso, cor do pelo, comprimentos dos pelos, etc Latir, comer, sentar, dormir, etc
Mtodos
Atributos
Nome do arquivo, tamanho, extenso, etc Ler, escrever, imprimir, salvar, etc
Mtodos
CLASSE
Modelo que descreve uma abstrao e a partir do qual podemos criar objetos Tambm podemos dizer que classes so os moldes (modelos) dos objetos Uma classe por herdar e ser herdada de outras classes
Atributos e Mtodos
Ancestrais
Descendentes
ces
Lobos
Gatos
Panteras
CLASSE E OBJETOS
Mtodos
Atributo
CLASSE
Ces Gatos
CLASSE
Animais domsticos
Ces
Gatos
CLASSE
Mamferos
Jos
Zequinha
Maria
Seres Humanos
Animais Selvagens
HERANA
Todos os Atributos e Mtodos contidos no ancestral da classe (classe pai), j esto contidos automaticamente nos descendentes
Mamar
Herana Mamfero Possuir Plos
Caracteristicas comuns
Ser Humano
HERANA
Alteraes nos ancestrais se propagam aos descendentes Menos bugs, mais produtividade O programador s escreve o que muda
HERANA SIMPLES
HERANA MLTIPLA
POLIMORFISMO
Realiza a mesma operao (mtodo), mas de forma diferente (ncleo) Um mtodo definido no ancestral redefinido no descendente com um comportamento diferente Todo mtodo definido em um ancestral pode ser acessado atravs dos descendentes
POLIMORFISMO
Animais Falam
Celular
UML
Linguagem que nos diz o que fazer, sem dizer como e em que ordem uma famlia de notaes grficas, auxilia na descrio e projetos, especialmente aqueles que utilizam OO Padronizada, voc no inventa apenas utiliza os recursos Ajuda a conceber e validar ideias Viso de como ser o projeto, e como as entidades iram interagir entre si
UML
PRINCIPAIS DIAGRAMAS
Diagrama de pacotes
Diagrama de estados
DIAGRAMA DE CLASSES
Atributos
Operaes
As entidades possuem relao entre si, demostrando que esto ligadas de alguma forma
TIPOS DE RELACIONAMENTOS
Associao simples
Associao de Herana/Generalizao
Associao de agregao
Associao de composio
TIPOS DE RELACIONAMENTOS
Associao simples
Associao de Herana/Generalizao
Associao de agregao
Associao de composio
TIPOS DE RELACIONAMENTOS
Composio
Pedido->Itens Se voc destruir um pedido, os itens so destrudos, eles no tem sentido se no houver pedido
Se a parte existe sem o todo ->agregao Se a parte no existe sem o todo ->composio
Dvidas? Crticas?
Sugestes?