SlideShare une entreprise Scribd logo
1  sur  25
Básico de programação
orientada a objetos
Abril/2010



UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO
UNIVERSIDADE ABERTA DO BRASIL
DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA
Curso de Bacharelado em Sistemas de Informação

Leonardo Melo Santos
leonardomelosantos@gmail.com
Introdução a orientação
a objetos

Capítulo 1
Evolução das linguagens de
programação
   Linguagem de máquina e linguagem montadora
     Muitos comandos para fazer alto simples;
     Exigência de muito conhecimento;
     Códigos não tão legíveis;

   Linguagens de alto nível
     Popularização do uso dos computadores;
     Códigos mais amigáveis devido à complexidade dos
      problemas;
Paradigmas de programação
   1) Paradigma imperativo
     Código mais amigágel que linguagens
      montadoras;
     Código sequencial;
   2) Paradigma procedural
     Paradigma  imperativo mas com o uso de
      subrotinas (funções e procedimentos);
Paradigmas de programação
   3) Programação Modular e Estruturada
     Surgiu com a demanda de grandes projetos;
     Agrupamento de código-fonte através de
      módulos;
     Mais facilidade na manutenção do código-
      fonte;
Paradigmas de programação
   4) Paradigma orientado a objetos
    O  problema é partido em vários pedaços, a
      ponto de definirmos objetos/entidades;
     Visa aproximar a maneira como construímos
      os programas com o mundo real;
Vamos
comparar!!!
Introdução a orientação
a objetos

Capítulo 2
Conceitos de        O   rientação a   O
                                      bjetos


 Classe e Objeto
 Abstração
     Classificação/Instanciação;
     Agregação/Composição;
     Associaçõessimples;
     Encapsulamento;
     Generalização/Especialização;
     Polimorfismo;
O que é classe e o que é objeto?

   Classe: Uma classe é a descrição de um grupo
    de objetos com propriedades (atributos),
    comportamentos (métodos), e relacionamentos
    com outros objetos (associações e agregações);
   Objeto: Denota uma entidade, seja ela de
    natureza física, conceitual ou de software.
    Elementos como pessoas, organizações,
    máquinas, animais ou eventos podem ser
    considerados objetos.
O que é abstração???

Abstração é considerada a habilidade
 de modelar características do mundo
 real do problema que o programador
       esteja tentando resolver.
Classificação/Instanciação
 Classificar significa agrupar objetos com
  base em estruturas e comportamentos
  semelhantes;
 Instanciar objetos significa gerar novos
  exemplares a partir de uma descrição
  abstrata de um objeto genérico.
Classificação/Instanciação
Agregação/Composição
   A ideia de agregação ou composição
    estabelece a criação de novas classes de
    objetos a partir da junção de classes já
    existentes.
     Agregação:  Quando unimos um conjunto de
      objetos para formarmos um novo objeto;
     Decomposição: Quando, analisando um
      objeto, isolamos cada um de seus
      componentes.
Agregação/Composição
Associações simples
   As entidades envolvidas apresentam
    existências independentes, mas existe
    uma ligação entre elas. A agregação não
    é única forma de relacionamento entre
    objetos e classes.
Associações simples
Encapsulamento
   Um dos aspectos mais positivos da
    programação modular foi a ideia de
    encapsulamento de informações.
Encapsulamento
Generalização/Especialização
   Generalização e especialização são
    abstrações que permitem o reuso de
    objetos através da criação de classes de
    objetos a partir de outras classes.
Generalização/Especialização
Polimorfismo
   um mesmo tipo de objeto, sob certas
    condições, pode realizar ações diferentes
    ao receber uma mesma mensagem. Ou
    seja, objetos podem ter reações
    diferentes ao mesmo estímulo.
Polimorfismo
Dicas de estudo
   Foquem seus estudos em Abstração:
     Classificação/Instanciação;
     Agregação/Composição;
     Associaçõessimples;
     Encapsulamento;
     Generalização/Especialização;
     Polimorfismo;

   Instalem o Java SDK , Eclipse e   pratiquem!!!
Dúvidas?

Contenu connexe

Tendances

Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a ObjetosIgor Takenami
 
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoAula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoVinícius de Paula
 
02 - Orientação a objetos e revisão de C# v1.5
02 - Orientação a objetos e revisão de C# v1.502 - Orientação a objetos e revisão de C# v1.5
02 - Orientação a objetos e revisão de C# v1.5César Augusto Pessôa
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a ObjetosOrlando Junior
 
Algoritmos e Estrutura de Dados - Aula 01
Algoritmos e Estrutura de Dados - Aula 01Algoritmos e Estrutura de Dados - Aula 01
Algoritmos e Estrutura de Dados - Aula 01thomasdacosta
 
O paradigma da orientação a objetos
O paradigma da orientação a objetosO paradigma da orientação a objetos
O paradigma da orientação a objetosNécio de Lima Veras
 
Aula 3 introducao a orientação a objetos
Aula 3   introducao a orientação a objetosAula 3   introducao a orientação a objetos
Aula 3 introducao a orientação a objetosRafael Pinheiro
 
Aula 5 encapsulamento, associação, polimorfismo, interfaces
Aula 5   encapsulamento, associação, polimorfismo, interfacesAula 5   encapsulamento, associação, polimorfismo, interfaces
Aula 5 encapsulamento, associação, polimorfismo, interfacesRafael Pinheiro
 
Aula 7 - Repetição enquanto - parte 1
Aula 7 - Repetição enquanto - parte 1Aula 7 - Repetição enquanto - parte 1
Aula 7 - Repetição enquanto - parte 1Pacc UAB
 
Introdução à Análise de Sistemas
Introdução à Análise de SistemasIntrodução à Análise de Sistemas
Introdução à Análise de SistemasNécio de Lima Veras
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dadosvini_campos
 
Aula 01 - Introdução ao C++
Aula 01 - Introdução ao C++Aula 01 - Introdução ao C++
Aula 01 - Introdução ao C++PeslPinguim
 
Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoLeinylson Fontinele
 

Tendances (20)

Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
 
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoAula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de Projeto
 
02 - Orientação a objetos e revisão de C# v1.5
02 - Orientação a objetos e revisão de C# v1.502 - Orientação a objetos e revisão de C# v1.5
02 - Orientação a objetos e revisão de C# v1.5
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
 
Algoritmos e Estrutura de Dados - Aula 01
Algoritmos e Estrutura de Dados - Aula 01Algoritmos e Estrutura de Dados - Aula 01
Algoritmos e Estrutura de Dados - Aula 01
 
O paradigma da orientação a objetos
O paradigma da orientação a objetosO paradigma da orientação a objetos
O paradigma da orientação a objetos
 
Diagrama de Classes
Diagrama de ClassesDiagrama de Classes
Diagrama de Classes
 
Aula 3 introducao a orientação a objetos
Aula 3   introducao a orientação a objetosAula 3   introducao a orientação a objetos
Aula 3 introducao a orientação a objetos
 
Aula 06 - Diagrama de classes
Aula 06 - Diagrama de classesAula 06 - Diagrama de classes
Aula 06 - Diagrama de classes
 
POO - Aula 10 - Polimorfismo
POO - Aula 10 - PolimorfismoPOO - Aula 10 - Polimorfismo
POO - Aula 10 - Polimorfismo
 
Aula 09 - introducao oo
Aula 09 - introducao ooAula 09 - introducao oo
Aula 09 - introducao oo
 
Aula 5 encapsulamento, associação, polimorfismo, interfaces
Aula 5   encapsulamento, associação, polimorfismo, interfacesAula 5   encapsulamento, associação, polimorfismo, interfaces
Aula 5 encapsulamento, associação, polimorfismo, interfaces
 
Aula 7 - Repetição enquanto - parte 1
Aula 7 - Repetição enquanto - parte 1Aula 7 - Repetição enquanto - parte 1
Aula 7 - Repetição enquanto - parte 1
 
HTML Principios Básicos
HTML Principios BásicosHTML Principios Básicos
HTML Principios Básicos
 
Introdução à Análise de Sistemas
Introdução à Análise de SistemasIntrodução à Análise de Sistemas
Introdução à Análise de Sistemas
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dados
 
Aula 01 - Introdução ao C++
Aula 01 - Introdução ao C++Aula 01 - Introdução ao C++
Aula 01 - Introdução ao C++
 
Banco de dados
Banco de dadosBanco de dados
Banco de dados
 
Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e Especialização
 
Programação Orientado a Objetos
Programação Orientado a ObjetosProgramação Orientado a Objetos
Programação Orientado a Objetos
 

En vedette

Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVAProgramação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVACristiano Almeida
 
Introdução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoIntrodução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoMarconi Rodrigues
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaÁlvaro Farias Pinheiro
 
Análise Orientada a Objetos - Objetos E Classes
Análise Orientada a Objetos  -   Objetos E ClassesAnálise Orientada a Objetos  -   Objetos E Classes
Análise Orientada a Objetos - Objetos E ClassesCursoSENAC
 
Programação Orientada a Objetos - Uso da O.O. em Java
Programação Orientada a Objetos - Uso da O.O. em JavaProgramação Orientada a Objetos - Uso da O.O. em Java
Programação Orientada a Objetos - Uso da O.O. em JavaCristiano Almeida
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Luis Ferreira
 
Orientação a Objetos - Conceitos
Orientação a Objetos - ConceitosOrientação a Objetos - Conceitos
Orientação a Objetos - ConceitosMayron Cachina
 
Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)Armando Daniel
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVAMoises Omena
 
Expectation Maximization: o básico do básico
Expectation Maximization: o básico do básicoExpectation Maximization: o básico do básico
Expectation Maximization: o básico do básicoNicolau Werneck
 
Java orientação a objetos (variaveis de instancia e metodos)
Java   orientação a objetos (variaveis de instancia e metodos)Java   orientação a objetos (variaveis de instancia e metodos)
Java orientação a objetos (variaveis de instancia e metodos)Armando Daniel
 
Classificacoes Bibliográficas: uma introdução
Classificacoes Bibliográficas: uma introduçãoClassificacoes Bibliográficas: uma introdução
Classificacoes Bibliográficas: uma introduçãoBenildes Maculan
 
Curso java 05 - herança, classes e métodos abstratos
Curso java   05 - herança, classes e métodos abstratosCurso java   05 - herança, classes e métodos abstratos
Curso java 05 - herança, classes e métodos abstratosMaurício Linhares
 
Apresentação programação orientada à objetos
Apresentação   programação orientada à objetosApresentação   programação orientada à objetos
Apresentação programação orientada à objetossoncino
 
Aprendendo solid com exemplos
Aprendendo solid com exemplosAprendendo solid com exemplos
Aprendendo solid com exemplosvinibaggio
 

En vedette (20)

Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVAProgramação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
 
Introdução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoIntrodução a programação Orientada a Objeto
Introdução a programação Orientada a Objeto
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com Java
 
Análise Orientada a Objetos - Objetos E Classes
Análise Orientada a Objetos  -   Objetos E ClassesAnálise Orientada a Objetos  -   Objetos E Classes
Análise Orientada a Objetos - Objetos E Classes
 
Programação Orientada a Objetos - Uso da O.O. em Java
Programação Orientada a Objetos - Uso da O.O. em JavaProgramação Orientada a Objetos - Uso da O.O. em Java
Programação Orientada a Objetos - Uso da O.O. em Java
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos
 
Orientação a Objetos - Conceitos
Orientação a Objetos - ConceitosOrientação a Objetos - Conceitos
Orientação a Objetos - Conceitos
 
Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)
 
2672853-apostila-completa-de-Java
2672853-apostila-completa-de-Java2672853-apostila-completa-de-Java
2672853-apostila-completa-de-Java
 
Principais diagramas da UML
Principais diagramas da UMLPrincipais diagramas da UML
Principais diagramas da UML
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVA
 
Expectation Maximization: o básico do básico
Expectation Maximization: o básico do básicoExpectation Maximization: o básico do básico
Expectation Maximization: o básico do básico
 
Algoritmo EM
Algoritmo EMAlgoritmo EM
Algoritmo EM
 
Java orientação a objetos (variaveis de instancia e metodos)
Java   orientação a objetos (variaveis de instancia e metodos)Java   orientação a objetos (variaveis de instancia e metodos)
Java orientação a objetos (variaveis de instancia e metodos)
 
SCJA
SCJASCJA
SCJA
 
Introdução a java
Introdução a javaIntrodução a java
Introdução a java
 
Classificacoes Bibliográficas: uma introdução
Classificacoes Bibliográficas: uma introduçãoClassificacoes Bibliográficas: uma introdução
Classificacoes Bibliográficas: uma introdução
 
Curso java 05 - herança, classes e métodos abstratos
Curso java   05 - herança, classes e métodos abstratosCurso java   05 - herança, classes e métodos abstratos
Curso java 05 - herança, classes e métodos abstratos
 
Apresentação programação orientada à objetos
Apresentação   programação orientada à objetosApresentação   programação orientada à objetos
Apresentação programação orientada à objetos
 
Aprendendo solid com exemplos
Aprendendo solid com exemplosAprendendo solid com exemplos
Aprendendo solid com exemplos
 

Similaire à Conceitos básicos de programação orientada a objetos

Introdução à programação por objectos final
Introdução à programação por objectos finalIntrodução à programação por objectos final
Introdução à programação por objectos finalemcp11
 
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdfAPOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdfpedrina4
 
Paradigmas de programação
Paradigmas de programaçãoParadigmas de programação
Paradigmas de programaçãoMahayana2706
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a pooSedu
 
Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)Ryan Padilha
 
Apresentação versão 1.5
Apresentação   versão 1.5Apresentação   versão 1.5
Apresentação versão 1.5oliveiraprog
 
Orientação a Objetos
Orientação a ObjetosOrientação a Objetos
Orientação a ObjetosEdy Segura
 
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosIES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosRamon Mayor Martins
 
Poo apostila visual c
Poo apostila visual cPoo apostila visual c
Poo apostila visual cFabiano Lima
 
Curso : Introdução Orientação a Objetos
Curso : Introdução Orientação a ObjetosCurso : Introdução Orientação a Objetos
Curso : Introdução Orientação a Objetosdanielrpgj30
 
01 introducao-a-programacao-orientada-a-objetos-programacao-orientada-a-objet...
01 introducao-a-programacao-orientada-a-objetos-programacao-orientada-a-objet...01 introducao-a-programacao-orientada-a-objetos-programacao-orientada-a-objet...
01 introducao-a-programacao-orientada-a-objetos-programacao-orientada-a-objet...odnanfer
 
pec-12-patterns-intro.ppt
pec-12-patterns-intro.pptpec-12-patterns-intro.ppt
pec-12-patterns-intro.pptssuser7025cf
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVAMoises Omena
 

Similaire à Conceitos básicos de programação orientada a objetos (20)

Orientacao a Objetos
Orientacao a ObjetosOrientacao a Objetos
Orientacao a Objetos
 
Introdução à programação por objectos final
Introdução à programação por objectos finalIntrodução à programação por objectos final
Introdução à programação por objectos final
 
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdfAPOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
APOO.INT- S01 Paradigma de Orientação a Objetos (2).pdf
 
Java 00 Poo
Java 00 PooJava 00 Poo
Java 00 Poo
 
Paradigmas de programação
Paradigmas de programaçãoParadigmas de programação
Paradigmas de programação
 
Sld 4
Sld 4Sld 4
Sld 4
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a poo
 
Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)
 
Análise de sistemas oo 1
Análise de sistemas oo   1Análise de sistemas oo   1
Análise de sistemas oo 1
 
Apresentação versão 1.5
Apresentação   versão 1.5Apresentação   versão 1.5
Apresentação versão 1.5
 
Orientação a Objetos
Orientação a ObjetosOrientação a Objetos
Orientação a Objetos
 
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosIES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
 
Aula 01 introdução aoo
Aula 01   introdução aooAula 01   introdução aoo
Aula 01 introdução aoo
 
Poo apostila visual c
Poo apostila visual cPoo apostila visual c
Poo apostila visual c
 
Curso : Introdução Orientação a Objetos
Curso : Introdução Orientação a ObjetosCurso : Introdução Orientação a Objetos
Curso : Introdução Orientação a Objetos
 
Java7
Java7Java7
Java7
 
01 introducao-a-programacao-orientada-a-objetos-programacao-orientada-a-objet...
01 introducao-a-programacao-orientada-a-objetos-programacao-orientada-a-objet...01 introducao-a-programacao-orientada-a-objetos-programacao-orientada-a-objet...
01 introducao-a-programacao-orientada-a-objetos-programacao-orientada-a-objet...
 
pec-12-patterns-intro.ppt
pec-12-patterns-intro.pptpec-12-patterns-intro.ppt
pec-12-patterns-intro.ppt
 
Aula01-IntroducaoOO.pptx
Aula01-IntroducaoOO.pptxAula01-IntroducaoOO.pptx
Aula01-IntroducaoOO.pptx
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVA
 

Plus de Leonardo Melo Santos

Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...Leonardo Melo Santos
 
Curso de OO com C# - Parte 06 - ADO.NET
Curso de OO com C# - Parte 06 - ADO.NETCurso de OO com C# - Parte 06 - ADO.NET
Curso de OO com C# - Parte 06 - ADO.NETLeonardo Melo Santos
 
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricasCurso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricasLeonardo Melo Santos
 
Curso de OO com C# - Parte 04 - Estruturas de controle e Strings
Curso de OO com C# - Parte 04 - Estruturas de controle e StringsCurso de OO com C# - Parte 04 - Estruturas de controle e Strings
Curso de OO com C# - Parte 04 - Estruturas de controle e StringsLeonardo Melo Santos
 
Curso de OO com C# - Parte 03 - Plataforma .NET
Curso de OO com C# - Parte 03 - Plataforma .NETCurso de OO com C# - Parte 03 - Plataforma .NET
Curso de OO com C# - Parte 03 - Plataforma .NETLeonardo Melo Santos
 
Curso de OO com C# - Parte 02 - Introdução ao C#
Curso de OO com C# - Parte 02 - Introdução ao C#Curso de OO com C# - Parte 02 - Introdução ao C#
Curso de OO com C# - Parte 02 - Introdução ao C#Leonardo Melo Santos
 
Curso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosCurso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosLeonardo Melo Santos
 
Desenvolvimento de aplicações Java™ para TV Digital
Desenvolvimento de aplicações Java™ para TV DigitalDesenvolvimento de aplicações Java™ para TV Digital
Desenvolvimento de aplicações Java™ para TV DigitalLeonardo Melo Santos
 
Curso de J2ME - Parte 04 - Otimização
Curso de J2ME - Parte 04 - OtimizaçãoCurso de J2ME - Parte 04 - Otimização
Curso de J2ME - Parte 04 - OtimizaçãoLeonardo Melo Santos
 
Curso de J2ME - Parte 03 - Desenvolvimento de aplicações
Curso de J2ME - Parte 03 - Desenvolvimento de aplicaçõesCurso de J2ME - Parte 03 - Desenvolvimento de aplicações
Curso de J2ME - Parte 03 - Desenvolvimento de aplicaçõesLeonardo Melo Santos
 
Curso de J2ME - Parte 02 - Ambiente de desenvolvimento
Curso de J2ME - Parte 02 - Ambiente de desenvolvimentoCurso de J2ME - Parte 02 - Ambiente de desenvolvimento
Curso de J2ME - Parte 02 - Ambiente de desenvolvimentoLeonardo Melo Santos
 
Curso de J2ME - Parte 01 - Conceitos básicos
Curso de J2ME - Parte 01 - Conceitos básicosCurso de J2ME - Parte 01 - Conceitos básicos
Curso de J2ME - Parte 01 - Conceitos básicosLeonardo Melo Santos
 
Fundamentos de sistemas de informação
Fundamentos de sistemas de informaçãoFundamentos de sistemas de informação
Fundamentos de sistemas de informaçãoLeonardo Melo Santos
 
Trabalho em equipe e ética no trabalho
Trabalho em equipe e ética no trabalhoTrabalho em equipe e ética no trabalho
Trabalho em equipe e ética no trabalhoLeonardo Melo Santos
 
Verificação e validação de software
Verificação e validação de softwareVerificação e validação de software
Verificação e validação de softwareLeonardo Melo Santos
 
Marketing pessoal e as redes sociais
Marketing pessoal e as redes sociaisMarketing pessoal e as redes sociais
Marketing pessoal e as redes sociaisLeonardo Melo Santos
 

Plus de Leonardo Melo Santos (20)

Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
 
Curso de OO com C# - Parte 06 - ADO.NET
Curso de OO com C# - Parte 06 - ADO.NETCurso de OO com C# - Parte 06 - ADO.NET
Curso de OO com C# - Parte 06 - ADO.NET
 
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricasCurso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
 
Curso de OO com C# - Parte 04 - Estruturas de controle e Strings
Curso de OO com C# - Parte 04 - Estruturas de controle e StringsCurso de OO com C# - Parte 04 - Estruturas de controle e Strings
Curso de OO com C# - Parte 04 - Estruturas de controle e Strings
 
Curso de OO com C# - Parte 03 - Plataforma .NET
Curso de OO com C# - Parte 03 - Plataforma .NETCurso de OO com C# - Parte 03 - Plataforma .NET
Curso de OO com C# - Parte 03 - Plataforma .NET
 
Curso de OO com C# - Parte 02 - Introdução ao C#
Curso de OO com C# - Parte 02 - Introdução ao C#Curso de OO com C# - Parte 02 - Introdução ao C#
Curso de OO com C# - Parte 02 - Introdução ao C#
 
Curso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosCurso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetos
 
Scrum - Visão Geral
Scrum - Visão GeralScrum - Visão Geral
Scrum - Visão Geral
 
Desenvolvimento de aplicações Java™ para TV Digital
Desenvolvimento de aplicações Java™ para TV DigitalDesenvolvimento de aplicações Java™ para TV Digital
Desenvolvimento de aplicações Java™ para TV Digital
 
Web Services XML - .NET framework
Web Services XML - .NET frameworkWeb Services XML - .NET framework
Web Services XML - .NET framework
 
DotNet Remoting - .NET framework
DotNet Remoting - .NET frameworkDotNet Remoting - .NET framework
DotNet Remoting - .NET framework
 
Curso de J2ME - Parte 04 - Otimização
Curso de J2ME - Parte 04 - OtimizaçãoCurso de J2ME - Parte 04 - Otimização
Curso de J2ME - Parte 04 - Otimização
 
Curso de J2ME - Parte 03 - Desenvolvimento de aplicações
Curso de J2ME - Parte 03 - Desenvolvimento de aplicaçõesCurso de J2ME - Parte 03 - Desenvolvimento de aplicações
Curso de J2ME - Parte 03 - Desenvolvimento de aplicações
 
Curso de J2ME - Parte 02 - Ambiente de desenvolvimento
Curso de J2ME - Parte 02 - Ambiente de desenvolvimentoCurso de J2ME - Parte 02 - Ambiente de desenvolvimento
Curso de J2ME - Parte 02 - Ambiente de desenvolvimento
 
Curso de J2ME - Parte 01 - Conceitos básicos
Curso de J2ME - Parte 01 - Conceitos básicosCurso de J2ME - Parte 01 - Conceitos básicos
Curso de J2ME - Parte 01 - Conceitos básicos
 
Sistemas Workflow
Sistemas WorkflowSistemas Workflow
Sistemas Workflow
 
Fundamentos de sistemas de informação
Fundamentos de sistemas de informaçãoFundamentos de sistemas de informação
Fundamentos de sistemas de informação
 
Trabalho em equipe e ética no trabalho
Trabalho em equipe e ética no trabalhoTrabalho em equipe e ética no trabalho
Trabalho em equipe e ética no trabalho
 
Verificação e validação de software
Verificação e validação de softwareVerificação e validação de software
Verificação e validação de software
 
Marketing pessoal e as redes sociais
Marketing pessoal e as redes sociaisMarketing pessoal e as redes sociais
Marketing pessoal e as redes sociais
 

Conceitos básicos de programação orientada a objetos

  • 1. Básico de programação orientada a objetos Abril/2010 UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO UNIVERSIDADE ABERTA DO BRASIL DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA Curso de Bacharelado em Sistemas de Informação Leonardo Melo Santos leonardomelosantos@gmail.com
  • 2. Introdução a orientação a objetos Capítulo 1
  • 3. Evolução das linguagens de programação  Linguagem de máquina e linguagem montadora  Muitos comandos para fazer alto simples;  Exigência de muito conhecimento;  Códigos não tão legíveis;  Linguagens de alto nível  Popularização do uso dos computadores;  Códigos mais amigáveis devido à complexidade dos problemas;
  • 4. Paradigmas de programação  1) Paradigma imperativo  Código mais amigágel que linguagens montadoras;  Código sequencial;  2) Paradigma procedural  Paradigma imperativo mas com o uso de subrotinas (funções e procedimentos);
  • 5. Paradigmas de programação  3) Programação Modular e Estruturada  Surgiu com a demanda de grandes projetos;  Agrupamento de código-fonte através de módulos;  Mais facilidade na manutenção do código- fonte;
  • 6. Paradigmas de programação  4) Paradigma orientado a objetos O problema é partido em vários pedaços, a ponto de definirmos objetos/entidades;  Visa aproximar a maneira como construímos os programas com o mundo real;
  • 8. Introdução a orientação a objetos Capítulo 2
  • 9. Conceitos de O rientação a O bjetos  Classe e Objeto  Abstração  Classificação/Instanciação;  Agregação/Composição;  Associaçõessimples;  Encapsulamento;  Generalização/Especialização;  Polimorfismo;
  • 10. O que é classe e o que é objeto?  Classe: Uma classe é a descrição de um grupo de objetos com propriedades (atributos), comportamentos (métodos), e relacionamentos com outros objetos (associações e agregações);  Objeto: Denota uma entidade, seja ela de natureza física, conceitual ou de software. Elementos como pessoas, organizações, máquinas, animais ou eventos podem ser considerados objetos.
  • 11. O que é abstração??? Abstração é considerada a habilidade de modelar características do mundo real do problema que o programador esteja tentando resolver.
  • 12. Classificação/Instanciação  Classificar significa agrupar objetos com base em estruturas e comportamentos semelhantes;  Instanciar objetos significa gerar novos exemplares a partir de uma descrição abstrata de um objeto genérico.
  • 14. Agregação/Composição  A ideia de agregação ou composição estabelece a criação de novas classes de objetos a partir da junção de classes já existentes.  Agregação: Quando unimos um conjunto de objetos para formarmos um novo objeto;  Decomposição: Quando, analisando um objeto, isolamos cada um de seus componentes.
  • 16. Associações simples  As entidades envolvidas apresentam existências independentes, mas existe uma ligação entre elas. A agregação não é única forma de relacionamento entre objetos e classes.
  • 18. Encapsulamento  Um dos aspectos mais positivos da programação modular foi a ideia de encapsulamento de informações.
  • 20. Generalização/Especialização  Generalização e especialização são abstrações que permitem o reuso de objetos através da criação de classes de objetos a partir de outras classes.
  • 22. Polimorfismo  um mesmo tipo de objeto, sob certas condições, pode realizar ações diferentes ao receber uma mesma mensagem. Ou seja, objetos podem ter reações diferentes ao mesmo estímulo.
  • 24. Dicas de estudo  Foquem seus estudos em Abstração:  Classificação/Instanciação;  Agregação/Composição;  Associaçõessimples;  Encapsulamento;  Generalização/Especialização;  Polimorfismo;  Instalem o Java SDK , Eclipse e pratiquem!!!