Buscar

ESOF - Aula 12 - 2013_1 - SourceInnovation

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

18/09/13 ESOF - Aula 12 - 2013/1 - SourceInnovation
www.sourceinnovation.com.br/index.php/ESOF_-_Aula_12_-_2013/1 1/7
ESOF - Aula 12 - 2013/1
De SourceInnovation
Orientação a Objetos
Índice
1 Breve Histórico
2 Foco
3 Novo paradigma
4 Características
5 Conceitos básicos
5.1 Objetos
Breve Histórico
Fim da década de 80: Amadurecimento da orientação a objeto
Década de 1990: Diversas proposições (Booch, Rumbaugh, Jacobson, ...)
http://www.sourceinnovation.com.br/index.php/Booch
http://www.sourceinnovation.com.br/index.php/Rumbaugh
http://www.sourceinnovation.com.br/index.php/Jacobson
Década de 2000: Utilização rotineira da OOA (Object Oriented Analysis)como método de análise e uma certa padronização através
da utilização extensiva do UML (Unified Modeling Language).
A OOA baseia-se num conceito simples de que as pessoas adquirem desde a infância, como objetos e atributos, classes e membros,
todo e partes do todo.
Atual: Orientação a Serviço (SOA)
http://www.sourceinnovation.com.br/index.php/SOA
Foco
18/09/13 ESOF - Aula 12 - 2013/1 - SourceInnovation
www.sourceinnovation.com.br/index.php/ESOF_-_Aula_12_-_2013/1 2/7
Métodos Abordagens Ferramentas
Análise
tradicional
Funcional Textos e fluxogramas
Análise
estruturada
Funcional e
Dados
Diagramas: Fluxos de dados, Estrutura de dados, Miniespecificações, Normalização e Dicionário de
Dados
Análise
essencial
Funcional,
Dados e
Controle
Tabela de eventos. Diagramas: Fluxos de dados, Entidade e Relacionamento, Transição de estados,
Estrutura de dados, Miniespecificações, Normalização e Dicionário de dados
Análise
orientada a
objetos
UML Diagramas: Casos de uso, Classes, Atividades, Estado, Pacotes e Colaboração
Análise
orientada a
serviços
SOA .
Foco tradicional: Compreensão do sistema como um conjunto de programas que executam processos sobre os dados.
Foco OOA: O sistema é uma coletânea de objetos que interagem entre si, com características próprias, representados por
atributos(dados) e operações (processos).
Os métodos de orientação a objetos apresentam uma visão mais integrada das funções e dados
O sistema orientado a objetos é estruturado através de objetos, que contemplam: funções + dados
Resultados:
Produtos mais estáveis e de melhor qualidade
Processo de desenvolvimento que permite:
melhor entendimento do sistema e do seu ambiente
melhor entendimento do domínio da aplicação
melhor independência da implementação até estágios mais avançados.
18/09/13 ESOF - Aula 12 - 2013/1 - SourceInnovation
www.sourceinnovation.com.br/index.php/ESOF_-_Aula_12_-_2013/1 3/7
Quando usar uma análise OO?
Projeto de grande porte: Muita informação e subprojeto
Sistema para organização da Copa do Mundo
Sistema para construção de um foguete
Requisitos não completamente fechados : Não se consegue definir tudo antecipadamente
Sistema a ser desenvolvido pela sua equipe
Aplicação onde alguns itens dependem de novos conhecimentos
Requisitos vagos, incompletos ou inconsistentes:
Sistema solicitado oralmente
Demandas vindas de solicitantes inexperientes. Ex: Diretor novo na empresa
Novas aplicações: Abordagem sistemática para facilitar o entendimento
Ex: Sistema Realidade Aumentada
Projetos inovadores, radicais. Ex: Gerenciamento de um satélite.
Equipe com especialidades diversas : Torna-se linguagem comum
Ex: Sistemas de controle de um avião
É construído com pessoas de diversas partes do mundo com diferentes competências
Sistemas críticos: Definição mais profunda da lógica
Ex: Sistema bancário, sistemas de alta segurança, Bolsa de Valores, etc.
Benefícios da AOO
a) Mantém a modelagem do sistema e, conseqüentemente, a automação do mesmo o mais próximo possível de uma visão conceitual
do mundo real.
b) Baseia a decomposição e modelagem do sistema nos dados, que é o elemento mais estável de todos aqueles que compõem um
sistema de informação.
c) Oferece maior transparência na passagem da análise ( modelo essencial ) para o projeto ( modelo de implementação )
18/09/13 ESOF - Aula 12 - 2013/1 - SourceInnovation
www.sourceinnovation.com.br/index.php/ESOF_-_Aula_12_-_2013/1 4/7
Novo paradigma
O desenvolvimento das aplicações continuou passando por grandes mudanças. O paradigma de desenvolvimento que acabamos de
estudar, o procedimental ou estruturado, foi um dos primeiros a se popularizar. A maneira como se codifica é linear, muito próximo ao
hardware e utilizava conceitos matemáticos para definir soluções. “Um algoritmo é uma sequência ordenada e finita de etapas, cuja
execução passo a passo resolve um determinado problema.” (VILARIM, 2004, p.7).
O desenvolvimento de aplicações baseadas neste paradigma era de uma complexidade muito alta levando a descontinuação de vários
projetos de software. Para tentar reverter essa realidade, foi criada uma nova abordagem de desenvolvimento, o Paradigma Orientado
a Objetos.
Este, por sua vez, permitia a criação de um código de melhor legibilidade, rotinas podiam ser mais facilmente reutilizadas e processos
complexos podiam ser escritos de forma mais compreensível e de melhor manutenção.
Segundo Deitel (2006), orientação a objetos é um paradigma que aproxima o programador do mundo real, no qual tudo pode ser visto
como objetos, como por exemplo:
Na escola:
livro, aluno, faculdade, curso, disciplina, professor, ...
Na indústria:
motor, carga, consumo, impedância, ...
No comércio:
produto, venda, nota fiscal, cliente, vendedor, ...
Em casa:
garagem, pessoa, camera, lampada, consumo, chuveiro, ...
No jogo:
avatar, fase, movimento, armas, perfil, ...
Antes da OO, o desenvolvimento se preocupava com as ações desses objetos, a programação se baseava nos verbos:
AlugarLivro
CadastrarAluno
RealizarMatricula
etc.
O programador recebia os problemas em objetos e codificava em verbos. A primeira providência era imaginar o fluxo de dados e as
funções principais (DFD e DD). Depois se pensava em como os dados permanentes (persistentes) seriam armazenados (DER).
Com o advento da OO, o programador passou a codificar exatamente o que via. A modelagem passou a se basear nos substantivos, como,
por exemplo, o livro, o aluno, a conta, o cliente, o sensor, a carga, etc. 
Ao desenvolver um sistema OO, não se analisa o problema linearmente. Primeiro se observa quais objetos estão interagindo entre si e
qual a responsabilidade de cada um dentro do contexto do problema. Essa nova forma de raciocinar tornou sistemas grandes e
complexos possíveis de serem realizados
Características
18/09/13 ESOF - Aula 12 - 2013/1 - SourceInnovation
www.sourceinnovation.com.br/index.php/ESOF_-_Aula_12_-_2013/1 5/7
Objetos são abstrações de entidades do mundo real (ou de algum sistema) que se auto-gerenciam
Objetos são independentes e encapsulam suas representações de estado e de informações
A funcionalidade de um sistema é expressa em termos de serviços que os objetos prestam
Áreas de dados redundantes são eliminadas
Objetos se comunicam através do envio de mensagens
Objetos podem ser distribuídos
Objetos podem ser executados sequencialmente ou de forma paralela.
Projeto, análise e programação são atividades distintas 
Análise OO se preocupa com a modelagem dos objetos para o domínio da aplicação
Projeto OO se encarrega do desenvolvimento de um modelo de sistema que implemente os requisitos funcionais e não-funcionais pré-
definidos pela AOO
Programação OO se incumbe da implementação do Projeto OO usando uma linguagem de programação OO (C++, Java, Python,
...).
___________________________________________________________________________________________________________
18/09/13 ESOF - Aula 12 - 2013/1 - SourceInnovation
www.sourceinnovation.com.br/index.php/ESOF_-_Aula_12_-_2013/1 6/7
As técnicas orientadas a objeto permitem que o software seja construído de objetosque tenham um comportamento especifico
A análise de sistemas no mundo orientado a objetos é feita analisando-se os objetos e os eventos que interagem com esses objetos
O projeto de software é feito reusando-se classes de objetos existentes e quando necessário, construindo-se novas classes.
_________________________________________________________________________________________________________
A análise e o projeto orientados a objeto modelam o mundo em termos de objetos que tem propriedades e comportamentos e eventos
que disparam operações que mudam o estado dos objetos
Exemplo:
Uma reprovação pode mudar o estado do objeto Aluno para fazer parte da turma do próximo semestre
A informação recebida pelo objeto sensor pode mudar seu estado para gerar um serviço de alarme
A ação de uma retirada num banco pode fazer o objeto Cheque a exigir a ação do gerente
Os objetos interagem com outros objetos
A modelagem e o projeto orientados a objeto são os paradigmas que devem integrar todas as ferramentas e técnicas poderosas para a
criação de software.
Conceitos básicos
Objetos
Qualquer coisa é um objeto
Objetos se realizam através da requisição de serviços a outros objetos
Cada objeto pertence a uma determinada classe. Uma classe agrupo objetos similares
A classe é um repositório e são organizados hierarquicamente
São entidades em um sistema de software que representam instâncias de entidades do mundo real e de algum sistema
Características: 
Objeto é um conceito, uma abstração ou uma coisa, com limites e significados bem definidos em relação ao problema considerado
18/09/13 ESOF - Aula 12 - 2013/1 - SourceInnovation
www.sourceinnovation.com.br/index.php/ESOF_-_Aula_12_-_2013/1 7/7
Um objeto é normalmente identificado por um substantivo
Um objeto contém estrutura e comportamento.
Exemplos de objetos
Objeto Objeto Objeto
Parafuso Motor Carro
Fração Equação Fórmula
Parágrafo Documento Livrarias
Depósito Conta Banco
Movimento Fase Game
Disponível em "http://www.sourceinnovation.com.br/index.php?title=ESOF_-_Aula_12_-_2013/1&oldid=16141"
Esta página foi modificada pela última vez à(s) 23h09min de 16 de julho de 2013.
Esta página foi acessada 146 vezes.

Continue navegando