SlideShare ist ein Scribd-Unternehmen logo
1 von 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?

Weitere ähnliche Inhalte

Was ist angesagt?

Apresentação programação orientada à objetos
Apresentação   programação orientada à objetosApresentação   programação orientada à objetos
Apresentação programação orientada à objetos
soncino
 
Introdução a Padrões de Projeto
Introdução a Padrões de ProjetoIntrodução a Padrões de Projeto
Introdução a Padrões de Projeto
Eduardo Mendes
 
Fundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetosFundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetos
Evandro Agnes
 

Was ist angesagt? (20)

Encapsulamento em Orientação a Objetos
Encapsulamento em Orientação a ObjetosEncapsulamento em Orientação a Objetos
Encapsulamento em Orientação a Objetos
 
POO - Aula 1
POO - Aula 1POO - Aula 1
POO - Aula 1
 
Programação orientada a objetos – II
Programação orientada a objetos – IIProgramação orientada a objetos – II
Programação orientada a objetos – II
 
Aula 4 banco de dados
Aula 4   banco de dados Aula 4   banco de dados
Aula 4 banco de dados
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a poo
 
Apresentação programação orientada à objetos
Apresentação   programação orientada à objetosApresentação   programação orientada à objetos
Apresentação programação orientada à objetos
 
UML
UMLUML
UML
 
Aula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem JavaAula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem Java
 
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
 
Introdução a Padrões de Projeto
Introdução a Padrões de ProjetoIntrodução a Padrões de Projeto
Introdução a Padrões de Projeto
 
JAVA - ENCAPSULAMENTO
JAVA - ENCAPSULAMENTOJAVA - ENCAPSULAMENTO
JAVA - ENCAPSULAMENTO
 
Introdução a Linguagem Java
Introdução a Linguagem JavaIntrodução a Linguagem Java
Introdução a Linguagem Java
 
UML - Diagrama de Pacotes
UML - Diagrama de PacotesUML - Diagrama de Pacotes
UML - Diagrama de Pacotes
 
POO - 16 - Polimorfismo
POO - 16 - PolimorfismoPOO - 16 - Polimorfismo
POO - 16 - Polimorfismo
 
Estrutura de dados - Pilhas
Estrutura de dados - PilhasEstrutura de dados - Pilhas
Estrutura de dados - Pilhas
 
Apresentação da UML
Apresentação da UMLApresentação da UML
Apresentação da UML
 
Fundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetosFundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetos
 
Programação Orientada a objetos em Java
Programação Orientada a objetos em JavaProgramação Orientada a objetos em Java
Programação Orientada a objetos em Java
 
Java: Heranca e polimorfismo
Java: Heranca e polimorfismoJava: Heranca e polimorfismo
Java: Heranca e polimorfismo
 
Orientação a Objetos - Introdução - Exercícios
Orientação a Objetos - Introdução - ExercíciosOrientação a Objetos - Introdução - Exercícios
Orientação a Objetos - Introdução - Exercícios
 

Andere mochten auch

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
Nécio de Lima Veras
 
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
Cristiano Almeida
 
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
 
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
 
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
Maurício Linhares
 

Andere mochten auch (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
 
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
 
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
 
Programação Orientado a Objetos
Programação Orientado a ObjetosProgramação Orientado a Objetos
Programação Orientado a Objetos
 
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
 

Ähnlich wie 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 final
emcp11
 
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
pedrina4
 
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.5
oliveiraprog
 
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
danielrpgj30
 
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.ppt
ssuser7025cf
 

Ähnlich wie 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
 
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
 
aula 1.pptx
aula 1.pptxaula 1.pptx
aula 1.pptx
 

Mehr von Leonardo 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 trabalho
Leonardo Melo Santos
 
Marketing pessoal e as redes sociais
Marketing pessoal e as redes sociaisMarketing pessoal e as redes sociais
Marketing pessoal e as redes sociais
Leonardo Melo Santos
 

Mehr von 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
 

Kürzlich hochgeladen

Kürzlich hochgeladen (9)

Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 

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!!!