Você está na página 1de 28

PROGRAMAO

ORIENTADA A
OBJETOS

POO

Cleyton Ferrari
Link apresentao no
YouTube:
http://youtu.be/dtNZi5EV2h
s

cleytonferrari@hotmail.
com Fone: 69 9975-0504
@cleytonferrari
TISelvagem.com.br

Introduo a
POO
Classe e Objeto
Mtodo
Herana
Encapsulament
o
Abstrao
Polimorfismo
Interface
Coeso /
Acoplamento

INTRODUO

Programao
Orientada a Objetos?

Programao
Orientada a Objetos?

UM PARADIGMA
DE PROGRAMAO

Programao
Orientada a Objetos?

UM ESTILO
DE PROGRAMAO

Programao
Orientada a Objetos?
Imperativo/Proced
Funcional/Descritiva
ural
Prolog Popler Pascal Fortran ML F# - Haskell
QLISP
Basic
E muito mais... Orientada a Teste, Escalar, Restritiva,
Genrica....
Lgico

EXISTEM
OUTRAS

Programao
Orientada a Objetos?

DIFICULDADES
Complexidade no
aprendizado em
comparao com a
programao estruturada
Seus conceitos so de
difcil compreenso

BENEFICIOS
Mais fcil descrever o
mundo real atravs dos
objetos
O encapsulamento
facilita a manuteno do
cdigo
Maior facilidade para
reutilizao de cdigo

Programao
Orientada a Objetos?

RESUMO
POO um paradigma de programao que
usa "objetos" compostos por campos e
mtodos, justamente com suas interaes para projetar programas de computadores.
POO uma forma especial de programar,
http://en.wikipedia.org/wiki/Object-oriented_programming
mais prximo de como expressaramos as
coisas na vida real do que outros tipos de
programao.
POO
organizar o mundo real como uma
http://www.criarweb.com/artigos/215.php
coleo de objetos que incorporam estrutura
de dados e um conjunto de operaes que
manipulam estes dados e trocam mensagens

CLASSE
Uma classe uma estrutura que abstrai um
conjunto de objetos com caractersticas
similares. como um projeto, a partir dela
que criamos os objetos utilizados em nossos
programas.
http://en.wikipedia.org/wiki/Object-oriented_programming

Classe:
Atributos

Os Atributos em Programao Orientada a


Objetos so os elementos que definem a
estrutura de uma classe, ou seja suas
caractersticas.
http://en.wikipedia.org/wiki/Object-oriented_programming

Classe:
Construtores

Um construtor uma estrutura especial da


classe, um mtodo, que tem como objetivo
definir a configurao inicial de uma classe.
utilizado quando existem atributos da
classe que so essenciais para o
funcionamento do objeto, porm, so
atributos de instncia, e, assim, variam de
acordo com cada objeto.

Classe:
Destrutores

Semelhante aos construtores, o destrutor


tambm uma estrutura, outro mtodo, da
classe, porm este responsvel por limpar
a memria ou atributos utilizados na
execuo da classe.
http://www.webartz.com.br/php/php-orientado-a-objetos-conceitosconstrutores-e-destrutores

Classe:
Visibilidade
+ Public
Quem tem acesso classe tem acesso tambm a
qualquer membro com visibilidade public, raro ter
atributos pblicos, mas comum ter mtodos
pblicos.
http://www.dsc.ufcg.edu.br/~jacques/cursos/p2/html/oo/visibilidade.htm

- Private

O membro private no acessvel fora da classe, a


inteno que apenas quem escreve a classe possa
usar esses membros.
http://www.dsc.ufcg.edu.br/~jacques/cursos/p2/html/oo/visibilidade.htm

# Protected

O membro protected acessvel classe e a suas


subclasses, a inteno dar acesso aos
programadores que estendero sua classe.

Classe:
Objeto
Objetos so instncias de classes. atravs deles que
(praticamente) todo o processamento ocorre em
sistemas implementados com linguagens de
programao orientadas a objetos.
Programao orientada a objetos uma abordagem com Java.

No paradigma de orientao a objetos, tudo pode ser


potencialmente representado como um objeto. Sob o
ponto de vista da programao orientada a objetos,
um objeto no muito diferente de uma varivel
normal.
Programao orientada a objetos uma abordagem com Java.

MTODO
Um mtodo uma subrotina que
executada por um objeto ao receber uma
mensagem. Os mtodos determinam o
comportamento dos objetos de uma classe.
http://en.wikipedia.org/wiki/Object-oriented_programming

Mtodo:
Assinatura
Cada mtodo especificado por uma
assinatura, composta por um identificador
para o mtodo (o nome do mtodo), o tipo
para o valor de retorno e sua lista de
argumentos, sendo cada argumento
[modificador] tipo
identificado
pornome
seu(argumentos)
tipo e nome.
{
Programao orientada a objetos uma abordagem com Java.
corpo do mtodo
}

Atravs do mecanismo de sobrecarga


(overloading), dois mtodos de uma classe
podem ter o mesmo nome, desde que suas
assinaturas de argumentos sejam
diferentes.

Mtodo:
Sobrecarga
So mtodos que tem o mesmo nome,
mas com argumentos diferentes.

Caracterstic
as

http://www.devmedia.com.br/post-5124-Orientacao-a-objetosparte-ll.html
Lista de Argumentos diferentes
Podem alterar o tipo de retorno

Podem alterar o modificador de acesso


Declarar excees novas ou mais
abrangentes

Mtodo:
Mensagens
Um programa orientado a objetos
composto por um conjunto de objetos que
interagem atravs de trocas de
mensagens. Na prtica, essa troca de
mensagem traduz-se na aplicao de
mtodos a objetos.
Programao orientada a objetos uma abordagem com Java.

Mtodo:
Estticos
Usualmente, mtodos definidos em uma
classe so aplicados a objetos daquela
classe. H no entanto situaes nas quais
um mtodo pode fazer uso dos recursos de
uma classe para realizar sua tarefa sem
necessariamente estar associado a um
Para
lidar
com tais situaes, define os
objeto
individualmente.
mtodos
da classe,
cuja
declarao
deve
Programao orientada
a objetos
uma
abordagem com
Java.
conter o modificador static. Um mtodo
esttico pode ser aplicado classe e no
necessariamente a um objeto.
Programao orientada a objetos uma abordagem com Java.

HERANA
Herana um mecanismo que permite que
caractersticas comuns a diversas classes
sejam fatoradas em uma classe base, ou
superclasse. A partir de uma classe base,
outras classes podem ser especificadas.
Programao orientada a objetos uma abordagem com Java.

Herana:
Sobreposio

A sobreposio refere-se redefinio de


mtodos na hierarquia da herana, de forma
que estes mtodos implementam definies
diferentes (mais especializadas) nos subtipos.
http://arquiteturaemobilidade.blogspot.com/2008/07/conceitos-daorientao-objetos-com-uml_08.html

ENCAPSULAMENTO
o princpio pelo qual cada componente de
um programa deve agregar toda a
informao relevante para sua manipulao
como uma unidade (uma cpsula). Aliado ao

ABSTRAO
Abstrao o processo de extrair as caractersticas
essenciais de um objeto real. A abstrao
necessria para se ter um modelo fiel da realidade
sobre a qual se possa operar.
http://www.slideshare.net/danielrpgj30/curso-de-programao-orientada-aO
conjunto de caractersticas resultante da abstrao
objetos

forma um tipo de dado abstrato com informaes


sobre seu estado e comportamento.

POLIMORFISMO
O polimorfismo permite que referncias de
tipos de classes mais abstratas representem
o comportamento das classes concretas que
referenciam. Assim, um mesmo mtodo pode
apresentar vrias formas, de acordo com o
seu contexto.

INTERFACE
um conjunto de mtodos que um objeto
deve suportar, mas contendo apenas a
especificao da funcionalidade que uma
classe deve conter, sem determinar como
essa funcionalidade deve ser
implementadas.

COESO / ACOPLAMENTO
Acoplamento o grau que uma classe depende, interage
com outra classe.
Coeso refere a finalidade que a classe foi criada.
http://www.devmedia.com.br/post-5124-Orientacao-a-objetos-parte-ll.html

Quanto menos uma classe depende da outra, menor o


acoplamento, e maior a especializao dela, isso significa
alta coeso.
http://www.devmedia.com.br/post-5124-Orientacao-a-objetos-parte-ll.html

DEMO

Você também pode gostar