SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
Ferramentas de Sistemas
de Informação 1
Projeto Orientado a Objetos
Análise Orientada a Objetos
Entender o problema
Projeto Orientado a Objeto
Propor soluções (Design)
Programação Orientada a Objetos
Desenvolvimento
Linguagens de
programação
orientada a objetos
Java
C#
VB.NET
Objective-C
C++
Ruby
Perl
JavaScript
Orientação a Objetos
Cada objeto tem sua própria estrutura independente.
dados
lógica
int score = 55
NSString *nome = @“Maria”;
score = score++;
NSLog(“O vencedor é %d”, nome);
[myObject doSomething];
dados
lógica
int score = 55
NSString *nome = @“Maria”;
score = score++;
NSLog(“O vencedor é %d”, nome);
[myObject doSomething];
dados
lógica
int score = 55
NSString *nome = @“Maria”;
score = score++;
NSLog(“O vencedor é %d”, nome);
[myObject doSomething];
Orientação a Objetos
Se comunicam e representam a forma
como pensamos os objetos no dia-a-dia.
dados
lógica
int score = 55
NSString *nome = @“Maria”;
score = score++;
NSLog(“O vencedor é %d”, nome);
[myObject doSomething];
dados
lógica
int score = 55
NSString *nome = @“Maria”;
score = score++;
NSLog(“O vencedor é %d”, nome);
[myObject doSomething];
dados
lógica
int score = 55
NSString *nome = @“Maria”;
score = score++;
NSLog(“O vencedor é %d”, nome);
[myObject doSomething];
Orientação a Objetos
Representação do mundo
dados
lógica
int score = 55
NSString *nome = @“Maria”;
score = score++;
NSLog(“O vencedor é %d”, nome);
[myObject doSomething];
dados
lógica
int score = 55
NSString *nome = @“Maria”;
score = score++;
NSLog(“O vencedor é %d”, nome);
[myObject doSomething];
dados
lógica
int score = 55
NSString *nome = @“Maria”;
score = score++;
NSLog(“O vencedor é %d”, nome);
[myObject doSomething];
Funcionário
Conta Bancária
Carro
Outros Exemplos
Documentos
Arquivos de áudio
Imagens
O que possa existir no programa.
Paradigma
Não é uma linguagem de programação;
É uma ideia com suporte em várias linguagens de
programação;
Existem outras alternativas: procedural (straight
C), lógica (Prolog), funcional (Haskell) ;
As Linguagens de Programação Orientada Objetos
são mais adequadas para desenvolver sistemas
web, jogos, mobile apps e desktop apps.
O que é um objeto?
São representáveis no mundo real e no virtual.
Objetos
São independentes de outros objetos;
Possuem suas identidades;
Um objeto pode conter outros objetos.
Possuem características que os
descrevem.
Duas canecas:
Cada uma possui sua
existência;
São dois objetos
diferentes em suas
existências;
Não são o mesmo objeto;
Um pode estar cheio e o
outro vazio.
Duas Lâmpadas:
Uma pode estar ligada e a
outra desligada;
Se desligarmos uma
lâmpada, não significa que
desligaremos todas as
lâmpadas do mundo.
A maioria dos objetos pode
ter múltiplos atributos
. Grande / Pequeno
. Branco / Preto / Outra cor
Objetos podem ter diferentes
tipos de comportamentos e
específico ao tipo de objeto
. Telefone pode tocar
. Avião pode voar
. Maçã não toca
. Telefone não voa
Identidade, Atributos e
Comportamento
Descrevem um objeto em
uma linguagem orientada a objeto.
Atividade
Listar 10 objetos e identificar seus respectivos:
(i) identidades,
(ii) atributos e
(iii) comportamentos.

Mais conteúdo relacionado

Semelhante a Introdução à Orientação a Objetos e seus Princípios

2 introdução c sharp
2  introdução c sharp2  introdução c sharp
2 introdução c sharpFrank Coelho
 
Linguagem de programação introdução v1
Linguagem de programação   introdução v1Linguagem de programação   introdução v1
Linguagem de programação introdução v1Carlos Melo
 
Paradigmas de programação
Paradigmas de programaçãoParadigmas de programação
Paradigmas de programaçãoMahayana2706
 
(Re)pensando a OOP - TDC 2012
(Re)pensando a OOP - TDC 2012(Re)pensando a OOP - TDC 2012
(Re)pensando a OOP - TDC 2012Luís Cobucci
 
Oo presentation básica
Oo presentation básicaOo presentation básica
Oo presentation básicaLorena de Souza
 
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaO novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaMessias Batista
 
Palestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do AndroidPalestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do AndroidMessias Batista
 
Modelo orientado a objetos
Modelo orientado a objetosModelo orientado a objetos
Modelo orientado a objetosDaiana de Ávila
 
O que você NÃO aprendeu sobre Programação Orientada a Objetos
O que você NÃO aprendeu sobre Programação Orientada a ObjetosO que você NÃO aprendeu sobre Programação Orientada a Objetos
O que você NÃO aprendeu sobre Programação Orientada a ObjetosDanilo Sato
 
CV - Andre De Conto Matter
CV - Andre De Conto MatterCV - Andre De Conto Matter
CV - Andre De Conto MatterAndre Matter
 
Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...
Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...
Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...Ricardo Valeriano
 
2.1 introdução a oo
2.1 introdução a oo2.1 introdução a oo
2.1 introdução a ooPAULO Moreira
 
Mini-Curso: Introdução à Big Data e Data Science - Aula 7 - Introdução à Ling...
Mini-Curso: Introdução à Big Data e Data Science - Aula 7 - Introdução à Ling...Mini-Curso: Introdução à Big Data e Data Science - Aula 7 - Introdução à Ling...
Mini-Curso: Introdução à Big Data e Data Science - Aula 7 - Introdução à Ling...Diego Nogare
 

Semelhante a Introdução à Orientação a Objetos e seus Princípios (20)

2 introdução c sharp
2  introdução c sharp2  introdução c sharp
2 introdução c sharp
 
Aula 1 3
Aula 1 3Aula 1 3
Aula 1 3
 
Linguagem de programação introdução v1
Linguagem de programação   introdução v1Linguagem de programação   introdução v1
Linguagem de programação introdução v1
 
Paradigmas de programação
Paradigmas de programaçãoParadigmas de programação
Paradigmas de programação
 
(Re)pensando a OOP - TDC 2012
(Re)pensando a OOP - TDC 2012(Re)pensando a OOP - TDC 2012
(Re)pensando a OOP - TDC 2012
 
Análise de sistemas oo 1
Análise de sistemas oo   1Análise de sistemas oo   1
Análise de sistemas oo 1
 
Oo presentation básica
Oo presentation básicaOo presentation básica
Oo presentation básica
 
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaO novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
 
Palestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do AndroidPalestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do Android
 
Programação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a ObjetosProgramação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a Objetos
 
Modelo orientado a objetos
Modelo orientado a objetosModelo orientado a objetos
Modelo orientado a objetos
 
Orientação a objetos prof. elisangela karlan
Orientação a objetos   prof. elisangela karlanOrientação a objetos   prof. elisangela karlan
Orientação a objetos prof. elisangela karlan
 
O que você NÃO aprendeu sobre Programação Orientada a Objetos
O que você NÃO aprendeu sobre Programação Orientada a ObjetosO que você NÃO aprendeu sobre Programação Orientada a Objetos
O que você NÃO aprendeu sobre Programação Orientada a Objetos
 
Aula01-IntroducaoOO.pptx
Aula01-IntroducaoOO.pptxAula01-IntroducaoOO.pptx
Aula01-IntroducaoOO.pptx
 
CV - Andre De Conto Matter
CV - Andre De Conto MatterCV - Andre De Conto Matter
CV - Andre De Conto Matter
 
Aula 01 introdução aoo
Aula 01   introdução aooAula 01   introdução aoo
Aula 01 introdução aoo
 
Orientacao a Objetos
Orientacao a ObjetosOrientacao a Objetos
Orientacao a Objetos
 
Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...
Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...
Qcon SP 2012, 5 (ou mais) coisas que você gostaria de saber sobre o iOS e o O...
 
2.1 introdução a oo
2.1 introdução a oo2.1 introdução a oo
2.1 introdução a oo
 
Mini-Curso: Introdução à Big Data e Data Science - Aula 7 - Introdução à Ling...
Mini-Curso: Introdução à Big Data e Data Science - Aula 7 - Introdução à Ling...Mini-Curso: Introdução à Big Data e Data Science - Aula 7 - Introdução à Ling...
Mini-Curso: Introdução à Big Data e Data Science - Aula 7 - Introdução à Ling...
 

Mais de Daniela Carvalho

Livro denis alcides_rezende_sistemas_informacoes_organizacionais_3ed_2008
Livro denis alcides_rezende_sistemas_informacoes_organizacionais_3ed_2008Livro denis alcides_rezende_sistemas_informacoes_organizacionais_3ed_2008
Livro denis alcides_rezende_sistemas_informacoes_organizacionais_3ed_2008Daniela Carvalho
 
UML - Casos de Uso Avançado
UML - Casos de Uso AvançadoUML - Casos de Uso Avançado
UML - Casos de Uso AvançadoDaniela Carvalho
 
Jogo da forca - Diagrama de Classe
Jogo da forca - Diagrama de ClasseJogo da forca - Diagrama de Classe
Jogo da forca - Diagrama de ClasseDaniela Carvalho
 
Conceitos Essenciais de Orientação a Objetos
Conceitos Essenciais de Orientação a ObjetosConceitos Essenciais de Orientação a Objetos
Conceitos Essenciais de Orientação a ObjetosDaniela Carvalho
 
Classe - Paradigma Orientado a Objetos
Classe - Paradigma Orientado a ObjetosClasse - Paradigma Orientado a Objetos
Classe - Paradigma Orientado a ObjetosDaniela Carvalho
 
Introdução ao Paradigma Orientado a Objetos - 2
Introdução ao Paradigma Orientado a Objetos - 2Introdução ao Paradigma Orientado a Objetos - 2
Introdução ao Paradigma Orientado a Objetos - 2Daniela Carvalho
 
Sintaxe do CSS - Aprenda a estrutura das regras e suas propriedades.
Sintaxe do CSS - Aprenda a estrutura das regras e suas propriedades.Sintaxe do CSS - Aprenda a estrutura das regras e suas propriedades.
Sintaxe do CSS - Aprenda a estrutura das regras e suas propriedades.Daniela Carvalho
 
Construindo interações no Axure 7.0
Construindo interações no Axure 7.0Construindo interações no Axure 7.0
Construindo interações no Axure 7.0Daniela Carvalho
 
Widgets e Masters no Axure 7.0
Widgets e Masters no Axure 7.0Widgets e Masters no Axure 7.0
Widgets e Masters no Axure 7.0Daniela Carvalho
 
Meu primeiro protótipo no Axure 7.0
Meu primeiro protótipo no Axure 7.0Meu primeiro protótipo no Axure 7.0
Meu primeiro protótipo no Axure 7.0Daniela Carvalho
 
As tecnologias da_inteligencia
As tecnologias da_inteligenciaAs tecnologias da_inteligencia
As tecnologias da_inteligenciaDaniela Carvalho
 
As múltiplas alfabetizações midiáticas
As múltiplas alfabetizações midiáticasAs múltiplas alfabetizações midiáticas
As múltiplas alfabetizações midiáticasDaniela Carvalho
 
Rolagem dinâmica no Axure
Rolagem dinâmica no AxureRolagem dinâmica no Axure
Rolagem dinâmica no AxureDaniela Carvalho
 
Painéis dinâmicos no Axure
Painéis dinâmicos no AxurePainéis dinâmicos no Axure
Painéis dinâmicos no AxureDaniela Carvalho
 
Construindo interações no Axure
Construindo interações no AxureConstruindo interações no Axure
Construindo interações no AxureDaniela Carvalho
 

Mais de Daniela Carvalho (20)

HTML e CSS
HTML e CSSHTML e CSS
HTML e CSS
 
Livro denis alcides_rezende_sistemas_informacoes_organizacionais_3ed_2008
Livro denis alcides_rezende_sistemas_informacoes_organizacionais_3ed_2008Livro denis alcides_rezende_sistemas_informacoes_organizacionais_3ed_2008
Livro denis alcides_rezende_sistemas_informacoes_organizacionais_3ed_2008
 
UML - Casos de Uso Avançado
UML - Casos de Uso AvançadoUML - Casos de Uso Avançado
UML - Casos de Uso Avançado
 
UML - Casos de Uso
UML - Casos de UsoUML - Casos de Uso
UML - Casos de Uso
 
Jogo da forca - Diagrama de Classe
Jogo da forca - Diagrama de ClasseJogo da forca - Diagrama de Classe
Jogo da forca - Diagrama de Classe
 
Conceitos Essenciais de Orientação a Objetos
Conceitos Essenciais de Orientação a ObjetosConceitos Essenciais de Orientação a Objetos
Conceitos Essenciais de Orientação a Objetos
 
Classe - Paradigma Orientado a Objetos
Classe - Paradigma Orientado a ObjetosClasse - Paradigma Orientado a Objetos
Classe - Paradigma Orientado a Objetos
 
Introdução ao Paradigma Orientado a Objetos - 2
Introdução ao Paradigma Orientado a Objetos - 2Introdução ao Paradigma Orientado a Objetos - 2
Introdução ao Paradigma Orientado a Objetos - 2
 
Animação para web
Animação para webAnimação para web
Animação para web
 
Animação na web
Animação na webAnimação na web
Animação na web
 
Sintaxe do CSS - Aprenda a estrutura das regras e suas propriedades.
Sintaxe do CSS - Aprenda a estrutura das regras e suas propriedades.Sintaxe do CSS - Aprenda a estrutura das regras e suas propriedades.
Sintaxe do CSS - Aprenda a estrutura das regras e suas propriedades.
 
Construindo interações no Axure 7.0
Construindo interações no Axure 7.0Construindo interações no Axure 7.0
Construindo interações no Axure 7.0
 
Widgets e Masters no Axure 7.0
Widgets e Masters no Axure 7.0Widgets e Masters no Axure 7.0
Widgets e Masters no Axure 7.0
 
Meu primeiro protótipo no Axure 7.0
Meu primeiro protótipo no Axure 7.0Meu primeiro protótipo no Axure 7.0
Meu primeiro protótipo no Axure 7.0
 
Um website desenhado
Um website desenhadoUm website desenhado
Um website desenhado
 
As tecnologias da_inteligencia
As tecnologias da_inteligenciaAs tecnologias da_inteligencia
As tecnologias da_inteligencia
 
As múltiplas alfabetizações midiáticas
As múltiplas alfabetizações midiáticasAs múltiplas alfabetizações midiáticas
As múltiplas alfabetizações midiáticas
 
Rolagem dinâmica no Axure
Rolagem dinâmica no AxureRolagem dinâmica no Axure
Rolagem dinâmica no Axure
 
Painéis dinâmicos no Axure
Painéis dinâmicos no AxurePainéis dinâmicos no Axure
Painéis dinâmicos no Axure
 
Construindo interações no Axure
Construindo interações no AxureConstruindo interações no Axure
Construindo interações no Axure
 

Introdução à Orientação a Objetos e seus Princípios

  • 1. Ferramentas de Sistemas de Informação 1 Projeto Orientado a Objetos
  • 2. Análise Orientada a Objetos Entender o problema
  • 3. Projeto Orientado a Objeto Propor soluções (Design)
  • 4. Programação Orientada a Objetos Desenvolvimento
  • 5. Linguagens de programação orientada a objetos Java C# VB.NET Objective-C C++ Ruby Perl JavaScript
  • 6. Orientação a Objetos Cada objeto tem sua própria estrutura independente. dados lógica int score = 55 NSString *nome = @“Maria”; score = score++; NSLog(“O vencedor é %d”, nome); [myObject doSomething]; dados lógica int score = 55 NSString *nome = @“Maria”; score = score++; NSLog(“O vencedor é %d”, nome); [myObject doSomething]; dados lógica int score = 55 NSString *nome = @“Maria”; score = score++; NSLog(“O vencedor é %d”, nome); [myObject doSomething];
  • 7. Orientação a Objetos Se comunicam e representam a forma como pensamos os objetos no dia-a-dia. dados lógica int score = 55 NSString *nome = @“Maria”; score = score++; NSLog(“O vencedor é %d”, nome); [myObject doSomething]; dados lógica int score = 55 NSString *nome = @“Maria”; score = score++; NSLog(“O vencedor é %d”, nome); [myObject doSomething]; dados lógica int score = 55 NSString *nome = @“Maria”; score = score++; NSLog(“O vencedor é %d”, nome); [myObject doSomething];
  • 8. Orientação a Objetos Representação do mundo dados lógica int score = 55 NSString *nome = @“Maria”; score = score++; NSLog(“O vencedor é %d”, nome); [myObject doSomething]; dados lógica int score = 55 NSString *nome = @“Maria”; score = score++; NSLog(“O vencedor é %d”, nome); [myObject doSomething]; dados lógica int score = 55 NSString *nome = @“Maria”; score = score++; NSLog(“O vencedor é %d”, nome); [myObject doSomething]; Funcionário Conta Bancária Carro
  • 9. Outros Exemplos Documentos Arquivos de áudio Imagens O que possa existir no programa.
  • 10. Paradigma Não é uma linguagem de programação; É uma ideia com suporte em várias linguagens de programação; Existem outras alternativas: procedural (straight C), lógica (Prolog), funcional (Haskell) ; As Linguagens de Programação Orientada Objetos são mais adequadas para desenvolver sistemas web, jogos, mobile apps e desktop apps.
  • 11. O que é um objeto? São representáveis no mundo real e no virtual.
  • 12.
  • 13. Objetos São independentes de outros objetos; Possuem suas identidades; Um objeto pode conter outros objetos. Possuem características que os descrevem.
  • 14. Duas canecas: Cada uma possui sua existência; São dois objetos diferentes em suas existências; Não são o mesmo objeto; Um pode estar cheio e o outro vazio.
  • 15. Duas Lâmpadas: Uma pode estar ligada e a outra desligada; Se desligarmos uma lâmpada, não significa que desligaremos todas as lâmpadas do mundo.
  • 16. A maioria dos objetos pode ter múltiplos atributos . Grande / Pequeno . Branco / Preto / Outra cor
  • 17. Objetos podem ter diferentes tipos de comportamentos e específico ao tipo de objeto . Telefone pode tocar . Avião pode voar . Maçã não toca . Telefone não voa
  • 18. Identidade, Atributos e Comportamento Descrevem um objeto em uma linguagem orientada a objeto.
  • 19. Atividade Listar 10 objetos e identificar seus respectivos: (i) identidades, (ii) atributos e (iii) comportamentos.