Sie sind auf Seite 1von 14

Projeto de Sistemas

Aula 3 / Atividade 1: Projeto Orientado a Objetos


Prof. Dr. Raphael Y. de Camargo UAB - Especializao em Tecnologia e Sistemas de Informao Universidade Federal do ABC (UFABC)

()

28 de julho de 2010

1 / 14

Sistemas Orientados a Objetos

Tenta aproximar a programao da maneira como os seres humanos enxergam e interagem com o mundo Software deixam de ser uma lista de procedimentos e passam a ser um conjunto de objetos que possuem caractersticias e modos de interao A idia de objetos que possvel empacotar juntos os dados e funcionalidades referentes a um conceito.

()

28 de julho de 2010

2 / 14

Caractersticas de Sistemas Orientados a Objetos

Tudo so objetos Programas so um conjunto de objetos que interagem entre si Cada objeto possui sua prpria memria privativa Todo objeto pertence a uma classe de objetos Todos os objetos da mesmo classe recebem o mesmo tipo de mensagens

()

28 de julho de 2010

3 / 14

Anlise, Projeto e Programao Orientada a Objetos

Anlise Orientada a Objetos: anlise de mais alto nvel para o desenvolvimento de um modelo no domnio da aplicao; Projeto Orientado a Objetos: desenvolvimento de um modelo que implementa os requisitos especicados do projeto; Programao Orientada a Objetos: implementao do software utilizando uma linguagem orientada a objetos. Normalmente o desenvolvimento do projeto do sistema passa por estas 3 fases.

()

28 de julho de 2010

4 / 14

Motivao para o Uso de Orientao a Objetos

Sistemas orientados a objetos so mais facilmente modicveis, uma vez que os objetos so independentes O mapeamento entre entre os objetos e entidades do mundo real facilitam o entendimento do sistema Objetos podem ser reutilizados, aumentando a produtividade

()

28 de julho de 2010

5 / 14

Objetos provm servios

Podemos imaginar os objetos como sendo provedores de servios Em geral, devemos criar objetos que tenham uma funo bem denida. No devemos criar objetos que fazem muitas coisas distintas. Exemplo: No uma boa idia criar um objeto que formata e realiza a impresso de um documento. O ideal criar um objeto que realiza a formatao, um que realiza a impresso e um que coordena todo o processo.

()

28 de julho de 2010

6 / 14

Objetos possuem uma classe e uma interface

possvel criar inmeros objetos do mesmo tipo. Os objetos so independentes entre si e cada objeto possui a sua memria. Todo objeto deve possuir uma interface, denida pela sua classe. Outros objetos utilizam esta interface para se comunicar com aquele objeto O importante deste ponto que a implementao do objeto escondida de quem est utilizando o mtodo. Deste modo, se podemos alterar a implementao do objeto vontade, desde de que a interface e a funcionalidade do objeto seja mantida.

()

28 de julho de 2010

7 / 14

Reuso da Implementao

Aps criar e testar uma classe, seria importante que ns pudssemos reutiliz-la em vrias situaes. Esta uma das grande vantagens do uso de orientao a objetos Um objeto pode ser utilizada como parte de uma outra classe. Quando criamos uma classe A a partir de objetos de outras classes, denominamos este processo de composio. Neste caso, dizemos que a possui estas demais classes. A composio nos d uma grande exibilidade, pois podemos alterar o comportamento de um objeto simplemesmente alterando os objetos que compem esta classe.

()

28 de julho de 2010

8 / 14

Herana

Existem muitos objetos que possuem comportamento muito parecidos, com diferenciaes apenas em alguns detalhes Seria interessante se pudssemos usar uma classe existente para gerar uma nova classe, modicando apenas as diferenas entre elas. Esta a funo da herana. Ao utilizar herana, devemos denir uma classe base e uma ou mais classes derivadas que herdam o comportamento e a interface da classe base, mas que podem modicar parte de sua funcionalidade

()

28 de julho de 2010

9 / 14

Herana II
Um modo de alterar a funcionalidade de uma classe adicionando novos mtodos, que no so parte da classe base, mas permitem realizar operaes especcas na classe derivada. O segundo modo reimplementar um ou mais mtodos que a classe de base j implemente. Neste caso, a interface das classes pai e lho so mantidas mas a implementao diferente

Figura: Herana de classes.


() 28 de julho de 2010 10 / 14

Polimorsmo

Quando usamos herana, podemos tratar o objeto derivado como se fosse um objeto do tipo base. No exemplo anterior, podemos tratar objetos dos tipos Crculo, Quadrado, Tringulo como se fossem objetos do tipo FiguraGeomtrica Conseqentemente, se adicionarmos um novo tipo de FiguraGeomtrica, como um Retngulo, podemos utiliz-lo diretamente no cdigo sem precisar reescrev-lo

()

28 de julho de 2010

11 / 14

Polimorsmo II

Mas tratar objetos derivados pelo seu tipo base traz uma limitao importante. Os mtodos da classe derivada no podem ser chamados, pois estes mtodos no esto denidos no tipo base. No exemplo anterior, se utilizarmos um objeto Tringulo como sendo do tipo FiguraGeomtrica, no poderemos chamar os mtodos giraVertical e giraHorizontal. E o que acontece se chamarmos o mtodo desenha de FiguraGeomtrica? Qual verso ser chamada, a de FiguraGeomtrica ou a de Tringulo.

()

28 de julho de 2010

12 / 14

Bibliotecas de classes
Ferramentas de desenvolvimento frequentemente contm um grande conjunto de classes que permitem realizar tarefas comuns como armazenar um conjuntos de objetos; No caso de armazenamento de objetos, normalmente existem vrias estruturas de dados, como listas, vetores, mapas e conjuntos, que o desenvolver escolhe de acordo com a necessidade. Boas implementaes so exveis, ecientes e bastante testadas; Por exemplo, as estruturas de dados podem permitir armazenar um grande nmero de objetos e aumentam e diminuem de tamanho medida que adicionamos e/ou retiramos objetos destes.

()

28 de julho de 2010

13 / 14

Sumrio

Nesta aula vimos o que so Sistemas Orientados a Objetos e suas vantagens, como reuso de cdigo e facilidade de manuteno; Tambm vimos conceitos importantes, como herana, interfaces, polimorsmo e encapsulamento; Na prxima atividade, veremos como representar gracamente os sistemas orientados a objetos.

()

28 de julho de 2010

14 / 14

Das könnte Ihnen auch gefallen