SlideShare una empresa de Scribd logo
1 de 10
Descargar para leer sin conexión
14/02/2011
1
Ttp:
Programação Orientada
a Objetos I
AULA 1
Introdução, Paradigmas de
Programação e JAVA
Prof. Rodrigo Rocha
prof.rodrigorocha@yahoo.com http://www.bolinhabolinha.com
Apresentação
 Prof. Rodrigo Rocha – prof.rodrigorocha@yahoo.com
 Ementa
• Paradigma Orientado a Objetos x Paradigma
Estruturado
• Sintaxe da Linguagem Java
• Classes, atributos e métodos
• Objetos e Classes
• Encapsulamento
• Atributos e métodos estáticos
• Construtores
• Sobrecarga de métodos e de construtores
(Overloading)
• Herança
• Conversão entre tipos (UpCasting e DownCasting)
• Sobrescrita de métodos(Overriding)
14/02/2011
2
Bibliografia
 Livro texto
• SANTOS, Rafael. Introdução à Programação
Orientada a Objetos usando Java : PLT. 1ª ed. Rio de
Janeiro: Elsevier, 2008.
 Complementar
• SERSON, Roberto Rubinstein. Programação orientada
a objetos com Java 6 : curso universitário. 1ª ed. São
Paulo: Pearson Education, 2007.
• DEITEL, H. M. & DEITEL, P. J., LISBOA, C. A . L. Java,
como programar. 6ª Ed. São Paulo: Pearson, 2005.
 Auxiliar
• http://java.sun.com/docs/
• Sites de busca
Aula - Aula
 Avaliação
• 1.Bi 40% 2. Bi 60% (ATPS 3,0 + Aval 7,0)
14/02/2011
3
Conceitos
 Linguagem de programação
• O que são ?
 “Linguagem artificial utilizada para controlar o comportamento de
equipamentos, como computadores” (wikipédia)
• Sintaxe
• Implementável
• Eficiente
• Compilação x Interpretação
• Editores, ambientes de programação
 Por que existem diferentes Linguagens de Programação
• Objetivos
• Avanço tecnológico
• Fins comerciais
 Programas
• Entrada – processamento – saída
• Seqüência de instruções para resolver problema
Paradigmas
 Paradigma
• Estilos, modelos, padrões
• Tipos de paradigmas (Watt, David A.)
Imperativo ou Procedural
Orientado a objetos
“Funcional”
Lógico
Scripts
14/02/2011
4
Paradigma: Procedural
 Paradigma Procedural (Imperativo)
• Primeiro a surgir
• Variáveis e comandos
• Muito utilizado
• Características:
Comandos
Variáveis
Procedimentos
Interação
• Exemplos: ADA, Pascal e C
Paradigma: Orientação a Objeto
 Abstração de dados
 Componentes principais:
• Classe
• Objeto
• Herança
• Polimorfismo
 Vantagens
• Modularização
• Extensibilidade
• Reutilização
 Exemplos: C++, .NET, JAVA
14/02/2011
5
Programação OO
 Mitos
• “se a linguagem é orientada a objetos, o
programa automaticamente também será”
• “orientação a objetos e programação estruturada
são exclusivas entre si”
• “não é possível usar orientação a objetos se a
linguagem não for orientada a objetos”
(Strijder van de Maan )
JAVA - Introdução
 Desenvolvido pela Sun Microsystem
 Surgiu na década de 90
 Distribuído GPL - General Public License
 Linguagem de Programação e Plataforma
 Características principais:
• Simples
• Orientado a objetos
• Multitarefa
• Processamento distribuído
• Alta performance
• Robusto
• Seguro
• Portável
14/02/2011
6
Como java pode mudar minha vida ?
 Aprendizado fácil
• Derivado de C e C++
 Escrita de menos código
• Em média 4 vezes menos que em c++
 Melhor código
• Estimula o uso de “boas práticas”
• Garbage collection
 Desenvolvimento mais rápido
 Roda em “qualquer” plataforma
 Distribuição do software mais fácil
Multiplataforma
 Compilação
“tradicional”
• Gera código
nativo
14/02/2011
7
Multiplataforma
 Arquivo .java
 Compilado, gera .class
• Não possui código nativo
• Bytecodes
• Executado onde possuir JVM
Multiplataforma
14/02/2011
8
Java e a Internet
 Applets
 Bytecodes executados no browser
 Habilitar JAVA no navegador
Java e outros dispositivos
 Casa digital, pelo menos 40 produtos com
processador
14/02/2011
9
JVM – Java Virtual Machine
 Especificação aberta
 Interpreta e executa java bytecode
J2EE, J2SE, J2ME
14/02/2011
10
Ambientes de Desenvolvimento
 NetBeans
• http://www.netbeans.org
 Eclipse
• http://www.eclipse.org
 JBuilder
• Borland
Dúvidas
Perguntas ??????

Más contenido relacionado

Destacado

Tecnologia front end back-end
Tecnologia front end back-end Tecnologia front end back-end
Tecnologia front end back-end Andressa Silveira
 
Amazon emr cluster hadoop pronto para usar na nuvem aws
Amazon emr   cluster hadoop pronto para usar na nuvem awsAmazon emr   cluster hadoop pronto para usar na nuvem aws
Amazon emr cluster hadoop pronto para usar na nuvem awsAmazon Web Services LATAM
 
Entendendo como fazer um firewall pessoal
Entendendo como fazer um firewall pessoalEntendendo como fazer um firewall pessoal
Entendendo como fazer um firewall pessoalAlmir Mendes
 
Mikrotik passo a passo
Mikrotik   passo a passoMikrotik   passo a passo
Mikrotik passo a passoIvan de Sousa
 
Manual Mikrotik
Manual Mikrotik Manual Mikrotik
Manual Mikrotik Marco Arias
 
Comandos Linux
Comandos LinuxComandos Linux
Comandos Linuxlol
 
Linux e sistemas embarcados
Linux e sistemas embarcadosLinux e sistemas embarcados
Linux e sistemas embarcadosRicardo Pinheiro
 
Mikrotik ultimo manual
Mikrotik ultimo manualMikrotik ultimo manual
Mikrotik ultimo manualChristian Val
 
Introduction to SlideShare for Businesses
Introduction to SlideShare for BusinessesIntroduction to SlideShare for Businesses
Introduction to SlideShare for BusinessesSlideShare
 
Lead Generation on SlideShare: A How-to Guide
Lead Generation on SlideShare: A How-to GuideLead Generation on SlideShare: A How-to Guide
Lead Generation on SlideShare: A How-to GuideSlideShare
 

Destacado (13)

Tecnologia front end back-end
Tecnologia front end back-end Tecnologia front end back-end
Tecnologia front end back-end
 
Amazon emr cluster hadoop pronto para usar na nuvem aws
Amazon emr   cluster hadoop pronto para usar na nuvem awsAmazon emr   cluster hadoop pronto para usar na nuvem aws
Amazon emr cluster hadoop pronto para usar na nuvem aws
 
Entendendo como fazer um firewall pessoal
Entendendo como fazer um firewall pessoalEntendendo como fazer um firewall pessoal
Entendendo como fazer um firewall pessoal
 
Sistemas Distribuídos - Clusters
Sistemas Distribuídos - ClustersSistemas Distribuídos - Clusters
Sistemas Distribuídos - Clusters
 
Ubuntu 14.04
Ubuntu 14.04Ubuntu 14.04
Ubuntu 14.04
 
Mikrotik passo a passo
Mikrotik   passo a passoMikrotik   passo a passo
Mikrotik passo a passo
 
Manual Mikrotik
Manual Mikrotik Manual Mikrotik
Manual Mikrotik
 
Curso oficial Mikrotik
Curso oficial MikrotikCurso oficial Mikrotik
Curso oficial Mikrotik
 
Comandos Linux
Comandos LinuxComandos Linux
Comandos Linux
 
Linux e sistemas embarcados
Linux e sistemas embarcadosLinux e sistemas embarcados
Linux e sistemas embarcados
 
Mikrotik ultimo manual
Mikrotik ultimo manualMikrotik ultimo manual
Mikrotik ultimo manual
 
Introduction to SlideShare for Businesses
Introduction to SlideShare for BusinessesIntroduction to SlideShare for Businesses
Introduction to SlideShare for Businesses
 
Lead Generation on SlideShare: A How-to Guide
Lead Generation on SlideShare: A How-to GuideLead Generation on SlideShare: A How-to Guide
Lead Generation on SlideShare: A How-to Guide
 

Similar a 1 ooi introducao

POO2 - Orientacao a Objetos (1).pdf
POO2 - Orientacao a Objetos (1).pdfPOO2 - Orientacao a Objetos (1).pdf
POO2 - Orientacao a Objetos (1).pdfJadna Almeida
 
paradigmas de programação
paradigmas de programaçãoparadigmas de programação
paradigmas de programaçãoD1ogo
 
Modelo orientado a objetos
Modelo orientado a objetosModelo orientado a objetos
Modelo orientado a objetosDaiana de Ávila
 
Doctrine 2 camada de persistência para php
Doctrine 2   camada de persistência para phpDoctrine 2   camada de persistência para php
Doctrine 2 camada de persistência para phpFabio B. Silva
 
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
 
Potfólio de Evidências
Potfólio de EvidênciasPotfólio de Evidências
Potfólio de EvidênciasPaulo Sateles
 
Apresentação Banco de Dados - Caché
Apresentação Banco de Dados - CachéApresentação Banco de Dados - Caché
Apresentação Banco de Dados - CachéRenzo Petri
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHPRangel Javier
 
Estudo de técnicas de persistência e acesso concorrente a ontologias
Estudo de técnicas de persistência e acesso concorrente a ontologiasEstudo de técnicas de persistência e acesso concorrente a ontologias
Estudo de técnicas de persistência e acesso concorrente a ontologiasHelio Henrique L. C. Monte-Alto
 
3 oo-concepts
3 oo-concepts3 oo-concepts
3 oo-conceptsjorge600
 
Gestão da informação com apache solr e drupal
Gestão da informação com apache solr e drupalGestão da informação com apache solr e drupal
Gestão da informação com apache solr e drupalPedro Rocha
 
Metodologia e Linguagem de Programação - Aula 1
Metodologia e Linguagem de Programação - Aula 1Metodologia e Linguagem de Programação - Aula 1
Metodologia e Linguagem de Programação - Aula 1Thyago Maia
 

Similar a 1 ooi introducao (20)

Aula Inicial
Aula InicialAula Inicial
Aula Inicial
 
POO Plano de Curso
POO Plano de CursoPOO Plano de Curso
POO Plano de Curso
 
POO2 - Orientacao a Objetos (1).pdf
POO2 - Orientacao a Objetos (1).pdfPOO2 - Orientacao a Objetos (1).pdf
POO2 - Orientacao a Objetos (1).pdf
 
Com vocês, Django!
Com vocês, Django!Com vocês, Django!
Com vocês, Django!
 
paradigmas de programação
paradigmas de programaçãoparadigmas de programação
paradigmas de programação
 
Modelo orientado a objetos
Modelo orientado a objetosModelo orientado a objetos
Modelo orientado a objetos
 
Doctrine 2 camada de persistência para php
Doctrine 2   camada de persistência para phpDoctrine 2   camada de persistência para php
Doctrine 2 camada de persistência para php
 
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
 
3 oo-concepts
3 oo-concepts3 oo-concepts
3 oo-concepts
 
Potfólio de Evidências
Potfólio de EvidênciasPotfólio de Evidências
Potfólio de Evidências
 
Apresentação Banco de Dados - Caché
Apresentação Banco de Dados - CachéApresentação Banco de Dados - Caché
Apresentação Banco de Dados - Caché
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHP
 
Introdução ao Ruby on Rails
Introdução ao Ruby on RailsIntrodução ao Ruby on Rails
Introdução ao Ruby on Rails
 
01 aula1 habib
01 aula1 habib01 aula1 habib
01 aula1 habib
 
Estudo de técnicas de persistência e acesso concorrente a ontologias
Estudo de técnicas de persistência e acesso concorrente a ontologiasEstudo de técnicas de persistência e acesso concorrente a ontologias
Estudo de técnicas de persistência e acesso concorrente a ontologias
 
Aula 1 pc - slides
Aula 1   pc - slidesAula 1   pc - slides
Aula 1 pc - slides
 
3 oo-concepts
3 oo-concepts3 oo-concepts
3 oo-concepts
 
Gestão da informação com apache solr e drupal
Gestão da informação com apache solr e drupalGestão da informação com apache solr e drupal
Gestão da informação com apache solr e drupal
 
Java com Excelência
Java com ExcelênciaJava com Excelência
Java com Excelência
 
Metodologia e Linguagem de Programação - Aula 1
Metodologia e Linguagem de Programação - Aula 1Metodologia e Linguagem de Programação - Aula 1
Metodologia e Linguagem de Programação - Aula 1
 

1 ooi introducao

  • 1. 14/02/2011 1 Ttp: Programação Orientada a Objetos I AULA 1 Introdução, Paradigmas de Programação e JAVA Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com http://www.bolinhabolinha.com Apresentação  Prof. Rodrigo Rocha – prof.rodrigorocha@yahoo.com  Ementa • Paradigma Orientado a Objetos x Paradigma Estruturado • Sintaxe da Linguagem Java • Classes, atributos e métodos • Objetos e Classes • Encapsulamento • Atributos e métodos estáticos • Construtores • Sobrecarga de métodos e de construtores (Overloading) • Herança • Conversão entre tipos (UpCasting e DownCasting) • Sobrescrita de métodos(Overriding)
  • 2. 14/02/2011 2 Bibliografia  Livro texto • SANTOS, Rafael. Introdução à Programação Orientada a Objetos usando Java : PLT. 1ª ed. Rio de Janeiro: Elsevier, 2008.  Complementar • SERSON, Roberto Rubinstein. Programação orientada a objetos com Java 6 : curso universitário. 1ª ed. São Paulo: Pearson Education, 2007. • DEITEL, H. M. & DEITEL, P. J., LISBOA, C. A . L. Java, como programar. 6ª Ed. São Paulo: Pearson, 2005.  Auxiliar • http://java.sun.com/docs/ • Sites de busca Aula - Aula  Avaliação • 1.Bi 40% 2. Bi 60% (ATPS 3,0 + Aval 7,0)
  • 3. 14/02/2011 3 Conceitos  Linguagem de programação • O que são ?  “Linguagem artificial utilizada para controlar o comportamento de equipamentos, como computadores” (wikipédia) • Sintaxe • Implementável • Eficiente • Compilação x Interpretação • Editores, ambientes de programação  Por que existem diferentes Linguagens de Programação • Objetivos • Avanço tecnológico • Fins comerciais  Programas • Entrada – processamento – saída • Seqüência de instruções para resolver problema Paradigmas  Paradigma • Estilos, modelos, padrões • Tipos de paradigmas (Watt, David A.) Imperativo ou Procedural Orientado a objetos “Funcional” Lógico Scripts
  • 4. 14/02/2011 4 Paradigma: Procedural  Paradigma Procedural (Imperativo) • Primeiro a surgir • Variáveis e comandos • Muito utilizado • Características: Comandos Variáveis Procedimentos Interação • Exemplos: ADA, Pascal e C Paradigma: Orientação a Objeto  Abstração de dados  Componentes principais: • Classe • Objeto • Herança • Polimorfismo  Vantagens • Modularização • Extensibilidade • Reutilização  Exemplos: C++, .NET, JAVA
  • 5. 14/02/2011 5 Programação OO  Mitos • “se a linguagem é orientada a objetos, o programa automaticamente também será” • “orientação a objetos e programação estruturada são exclusivas entre si” • “não é possível usar orientação a objetos se a linguagem não for orientada a objetos” (Strijder van de Maan ) JAVA - Introdução  Desenvolvido pela Sun Microsystem  Surgiu na década de 90  Distribuído GPL - General Public License  Linguagem de Programação e Plataforma  Características principais: • Simples • Orientado a objetos • Multitarefa • Processamento distribuído • Alta performance • Robusto • Seguro • Portável
  • 6. 14/02/2011 6 Como java pode mudar minha vida ?  Aprendizado fácil • Derivado de C e C++  Escrita de menos código • Em média 4 vezes menos que em c++  Melhor código • Estimula o uso de “boas práticas” • Garbage collection  Desenvolvimento mais rápido  Roda em “qualquer” plataforma  Distribuição do software mais fácil Multiplataforma  Compilação “tradicional” • Gera código nativo
  • 7. 14/02/2011 7 Multiplataforma  Arquivo .java  Compilado, gera .class • Não possui código nativo • Bytecodes • Executado onde possuir JVM Multiplataforma
  • 8. 14/02/2011 8 Java e a Internet  Applets  Bytecodes executados no browser  Habilitar JAVA no navegador Java e outros dispositivos  Casa digital, pelo menos 40 produtos com processador
  • 9. 14/02/2011 9 JVM – Java Virtual Machine  Especificação aberta  Interpreta e executa java bytecode J2EE, J2SE, J2ME
  • 10. 14/02/2011 10 Ambientes de Desenvolvimento  NetBeans • http://www.netbeans.org  Eclipse • http://www.eclipse.org  JBuilder • Borland Dúvidas Perguntas ??????