Curso de Extensão Programação Orientada a Objetos com Java. Última atualização: 25/05/2010



Documentos relacionados
Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

SUN Camilo Lopes -Sun Certified Programmer Java

Java para Desktop. Introdução à Plataforma Java JSE

PROGRAMAÇÃO ORIENTADA A OBJETOS EM JAVA*

PROGRAMAÇÃO JAVA. Parte 1

Linguagem Java. Arquitetura e Ambiente de Desenvolvimento. Arquitetura e Ambiente de Desenvolvimento Prof. Anderson Augustinho Uniandrade

Java & OpenJDK. Thiago S. Gonzaga. Sun Campus Ambassador thiago.gonzaga@sun.com

CURSO DE PROGRAMAÇÃO EM JAVA

Programação Orientada a Objetos (DPADF 0063)

Java Laboratório Aula 1. Divisões da Plataforma. Introdução a Plataforma Java. Visão geral da arquitetura da

Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010

Desenvolvimento Web TCC Turma A-1

TECNOLOGIA JAVA TENDÊNCIAS, MERCADO E FUTURO

Tecnologia Java. Daniel Destro do Carmo Softech Network Informática

Programação para Internet II

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

Daniel Wildt FACENSA Grupo de Estudos Java - FUJA Slide: 1

Programação de Computadores II TCC Turma A-1

Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério.

A Linguagem Algorítmica Estrutura de Repetição. Ex. 2

Prof. Marcelo Heitor Teixeira marceloheitor.com. Java Aula Introdutória. # História e Anatomia Java

Programação online em Java

Capítulo 1. Introdução ao Java. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Manual de Procedimentos para Desenvolvimento de Softwares

Introdução. à Linguagem JAVA. Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação. Laboratório de Visão Computacional

Introdução à Linguagem Java

Linguagem de Programação Introdução a Linguagem Java

Professor Antonio Benedito Coimbra Sampaio Jr

Fundamentos de Java. Prof. Marcelo Cohen. 1. Histórico

Curso de Aprendizado Industrial Desenvolvedor WEB

Programação de Computadores II: Java. / NT Editora. -- Brasília: p. : il. ; 21,0 X 29,7 cm.

Programação para Internet II

Adriano Reine Bueno Rafael Barros Silva

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS

Java - Introdução. Professor: Vilson Heck Junior. vilson.junior@ifsc.edu.br

J2EE TM Java 2 Plataform, Enterprise Edition

OOP - Java. Artur Duque Rossi Mestrado em Modelagem Computacional Universidade Federal de Juiz de Fora

Laboratório I Aula 2

Como sobreviver com Java 2? Saulo Arruda

AULA Uma linguagem de programação orientada a objetos

Orientação a Objetos com Java

Universidade Federal de Uberlândia

Um pouco do Java. Prof. Eduardo

FBV - Linguagem de Programação II. Um pouco sobre Java

Sobre o Professor Dr. Sylvio Barbon Junior

Programação Orientada a Objetos

Programação Orientada a Objetos

Lógica de Programação

Projetos Corporativos Baseados na Tecnologia Java Que Falham: O Que Podemos Aprender Deles?

Programação de Computadores - I. Profª Beatriz Profº Israel

Resumo: Perguntas a fazer ao elaborar um projeto arquitetural

Aspectos de Segurança em Programação com Java

Universidade da Beira Interior Cursos: Engenharia Informática, Matemática /Informática e Ensino da Informática

Linguagem de Programação Orientada a Objeto. Introdução a Orientação a Objetos Professora Sheila Cáceres

Definições. Parte 02. Java Conceitos e. Desenvolvimento de Programação Orientada a Objetos. Prof. Pedro Neto

Mini-curso Gratuíto.

Java. Marcio de Carvalho Victorino

Guião de Introdução ao Eclipse IDE Índice

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho

PROGRAMAÇÃO PARA SERVIDOR INTRODUÇÃO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

UFG - Instituto de Informática

INTRODUÇÃO E CONFIGURAÇÃO DO PRIMEFACES MOBILE EM APLICAÇÕES JSF

Aula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Orientação a Objetos

Como usar o bluej. Laboratório I Prof.ª Vera Alves

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática


LINGUAGEM DE PROGRAMAÇÃO JAVA

Java Linguagem de programação

Introdução à Linguagem Java. Departamento de Informática Prof. Anselmo C. de Paiva

SISTEMAS OPERACIONAIS

TDC2012. EJB simples e descomplicado, na prática. Slide 1

Guilherme Augusto de Assis

Introdução a Java. Hélder Nunes

Plano de Trabalho Docente Ensino Técnico

JDBC Java Database Connectivity

SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello

Prof. Esp. Adriano Carvalho

Linguagens de. Aula 02. Profa Cristiane Koehler

Orientação a Objetos e a Linguagem Java

Primeiro programa em Java (compilação e execução)

Java Server Pages: Apresentação e Instalação

Aula teórica 3. Tema 3.Computadores e linguagens Linguagens de Programação Compilação e linkagem LP Java. Preparado por eng.

Objetivos do Curso. Você será capaz de:

Framework.NET, Microsoft Visual C# 2010 Express e Elementos da Linguagem C#

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira

Procedimentos para Configuração do Ambiente J2EE e J2SE em Ambiente Windows

SIQ GQF Plugin s WEB (Aplicações WEB) Gestão da Qualidade de Fornecedores

5 Mecanismo de seleção de componentes

Curso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais

Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011

Transcrição:

Curso de Extensão Programação Orientada a Objetos com Java Última atualização: 25/05/2010 1

Objetivos do Curso Este curso fornece a você conhecimento e habilidades para: Programar e executar aplicações avançadas em Java, Compreender o paradigma de programação orientada a objetos, Auxiliar na preparação para a certificação Sun Certified Programmer for the Java 6.0 Platform. 2

Visão Geral Este curso compreende as seguintes áreas: A sintaxe da linguagem de programação Java, Conceitos de Orientação a Objetos relativos à Java, 3

Visão Geral Módulo a Módulo Módulo 01 Introdução à Tecnologia Java, ao IDE NetBeans e às provas de certificação Java Módulo 02 Introdução à Programação Orientada a Objetos Módulo 03 Identificadores, Palavras Chaves e Tipos Módulo 04 Controle de Fluxo Módulo 05 Arrays Módulo 06 Desenho de Classes Módulo 07 Características Avançadas de Classes e Princípios de Design 4

Tópicos Não Cobertos Conceitos gerais de programação. Este não é um curso para pessoas que nunca programaram antes. Servlets, JSP (Curso de Programação para a Web) Enterprise Java Beans EJB. (Curso de Computação Distribuída em Java) JDBC, JPA, AWT, JFC/Swing - (Conceitos vistos em outros cursos de extensão ) 5

Módulo 01 Introdução à Tecnologia Java, ao IDE NetBeans e às Provas de Certificação Java 6

Sopa de Letrinhas JSP EJB POJO J2SE WebSphere JUnit JavaFX WSDP Servlets Spring MVC JAXP Java SE Tomcat Cruise Control Android JDK JSTL Hibernate JWS Java ME Beanutils Ant Custom Tags WSDK JSF IReport JProfiler J2EE Generics Maven GlassFish JAR JPA JFreeChart Tiles Java EE RMI Subversion JAX-WS AWT JFC/Swing JDBC EL GWT Jxta Tortoise JAX-RS UDDI JBoss Seam Swing Framework Java Annotations JBoss JINI MVC JVM JNLP Struts Beans Managed Beans WebLogic JNI J2EE Patterns JRE DAO????????? 7

O que é a tecnologia Java? A tecnologia Java é: Uma Linguagem de programação Um ambiente de desenvolvimento Um ambiente de aplicação Um ambiente de execução. Similar em sintaxe a C++; similar em semântica em SmallTalk É utilizada no desenvolvimento de aplicações e applets. 8

Principais Metas da Tecnologia Java Fornecer uma linguagem de fácil utilização: a) Evita armadilhas de outras linguagens b) Por ser orientada a objetos c) Permite a criação de código mais legível Fornecer um ambiente interpretado para: a) Tornar ágil a velocidade de desenvolvimento b) Portabilidade de código. 9

Principais Metas da Tecnologia Java Permitir que usuários executem mais de uma thread de atividade, Suportar mudanças de forma dinâmica durante o tempo de execução de uma aplicação, carregando classes de fontes distintas; Prover melhor segurança. 10

Principais Metas da Tecnologia Java As seguintes características realizam estas metas: A Máquina Virtual Java (Java Virtual Machine - JVM) Coleta de Lixo em memória (Garbage collection) Segurança de Código 11

A Máquina Virtual Java É um ambiente que: Fornece especificações da plataforma de hardware Interpreta bytecodes que são independentes de plataforma É implementada em software ou hardware É implementada em uma ferramenta de desenvolvimento da tecnologia Java ou em um navegador web. 12

A Máquina Virtual Java A maior parte de checagem de tipos é feita em tempo de compilação. Implementações da JVM aprovadas pela Oracle/Sun Microsystems são capazes de executar qualquer arquivo classe da linguagem. 13

Garbage Collection Coleta de Lixo Memória alocada não mais necessária deve ser desalocada. Em outras linguagens desalocar área de memória é responsabilidade do programador A linguagem de programação Java fornece uma thread em nível de sistema para guardar alocação da memória. 14

Garbage Collection Garbage collection: Verifica e libera memória que não está sendo utilizada. É feita automaticamente Pode variar dramaticamente entre implementações distintas da JVM. 15

Segurança de Código O ambiente de programação Java executa da seguinte maneira: 16

Gerador de Código Just-In-Time (JIT) 17

O Ambiente de Execução Java Executa três tarefas principais: Carrega, Verifica, Executa o código. 18

O Carregador de Classe (Class Loader) Carrega todas as classes necessárias à execução de um programa, Mantém classes do sistema e de arquivos locais em namespaces distintos. Previne spoofing. 19

O Verificador de Bytecodes Assegura que: O código está de acordo com a especificação da JVM, O código não viola a integridade do sistema, O código não causa underflow ou overflow em pilha de operandos Os tipos dos parâmetros para todo o código estão corretos Nenhuma conversão ilegal de dados ocorreu. 20

Demonstração: Exemplo de Uma Aplicação em Java TesteCumprimento.java 1 // 2 // Dizendo oi para todos. Numeração de linhas apenas para tornar mais fácil a referência 3 // 4 public class TesteCumprimento{ 5 public static void main (String[] args) { 6 OiPessoal oi = new OiPessoal(); 7 oi.cumprimentar(); 8 } 9 } OiPessoal.java 1 // Declaração da classe OiPessoal. 2 public class OiPessoal{ 3 public void cumprimentar() { 4 System.out.println( oi pessoal!! ); 5 } 6 } 21

Compilando e Executando o Programa TesteCumprimento Compilando TesteCumprimento.java javac TesteCumprimento.java OiPessoal.java é compilada automaticamente. Executando a aplicação java TesteCumprimento 22

Regras Para Criação de Arquivos Fonte Java Arquivos fonte Java terminam com a extensão.java Embora possível, não é recomendada a criação de mais de uma classe em um arquivo fonte Java o Caso opte por ter mais de uma classe em um arquivo fonte, apenas uma poderá ter o modificador de acesso public. O nome da classe com modificador de acesso public deverá ser o nome do arquivo.java o Exemplo: Definição da classe: public class Teste {... } Nome do Arquivo: Teste.java Java é Case Sensitive! 23

Localizando Erros Comuns de Compilação e Execução Erros em Tempo de Compilação: javac: Command not found OiPessoal.java: 4 : cannot resolve symbol. symbol : method printl(java.lang.string) location: class java.io.printstream System.out.printl("Oi Pessoal!!"); TestaCumprimento.java: 4: Public class TesteCumprimento must Be defined in a file called "TesteCumprimento.java 24

Localizando Erros Comuns de Compilação e Execução Erros em Tempo de Execução: Can t find class TestaCumprimento Exception in thread "main" java.lang.nosuchmethoderror:main. 25

Ambiente de Execução Java 26

Prova de Certificação para Programador Java 5 - SCJP Sempre que possível, os slides deste curso estarão organizados em capítulos de forma a ficarem lado a lado com os objetivos impostos pela Oracle/Sun Todavia, em alguns casos os objetivos estarão misturados ou parcialmente repetidos em uma ordem mais adequada ao aprendizado. 27

Dicas de Estudo deste curso e para a prova de certificação Estude todos os slides, módulo por módulo. Execute todos os exemplos presentes no site entendendo como foram confeccionados e alterando-os para análise das conseqüências. Faça todos os exercícios solicitados em cada módulo Escreva pequenos códigos sobre um assunto em particular que você estiver estudando 28

Certificações Java da Oracle/Sun Fonte: http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=365 Acessado em, 24/05/2010. 29

Certificações Java da Oracle/Sun Associate Exam (cx-310-019) SCJA Não possui pré-requisito Destinado aos candidatos começando no mundo Java Exame de Programador Java 6 (cx-310-065) SCJP Não possui pré-requisito Desenvolvido para testar seu conhecimento da linguagem de programação Java. Requer conhecimento detalhado da sintaxe da linguagem, conceitos principais e diversas APIs 30

Certificações Java da Oracle/Sun Exame de Desenvolvedor (cx-310-252a, CX-310-027) SCJD Continuação do Exame de Programador Pré-requisito: SCJP, qualquer versão. Constituído de duas partes: um projeto a ser desenvolvido em casa e uma prova Exame de Desenvolvedor de Componentes Web (cx-310-083) SCWCD Pré-requisito: SCJP Para desenvolvedores que utilizam as tecnologias Servlets e JSP para o desenvolvimento de aplicações web 31

Certificações Java da Oracle/Sun Exame de Desenvolvedor de Componentes de Negócio (cx-310-091) SCBCD Pré-requisito: SCJP Para desenvolvedores que utilizam a tecnologia EJB para a construção de aplicações na camada de negócios. Exame de Desenvolvedor de Web Services (cx-310-230) SCDJWS Pré-requisito: SCJP Para desenvolvedores que utilizam tecnologias de web services. 32

Certificações Java da Oracle/Sun Exame de Arquiteto (cx-310-052, cx-310-301a, CX-310-062) SCEA Não possui pré-requisito Constituído de três partes: prova de múltipla-escolha, um projeto arquitetural, e uma prova final Exame para Dispositivos Móveis (cx-310-110) SCMAD Pré-requisito: SCJP Para desenvolvedores que utilizam a tecnologias Java ME para desenvolvimento de aplicativos para dispositivos móveis. 33

Realizando o Exame SCJP Os candidatos são avaliados em um centro Prometric através de uma avaliação baseada em computador. A prova SCJP 5.0 possui 72 questões com duração de 175 minutos É necessária nota mínima de 43 (59%) para aprovação. No final da prova a nota é exibida com sua aprovação ou reprovação 34

Formato de Questões - SCJP Questões de Múltipla Escolha Quais são declarações válidas? A. short x []; B. short [] y; C. short[5] x2; D. short z2 [5]; E. short [] z [] []; F. short [] y2 = [5]; Resposta: alternativas a, b, e 35

Formato de Questões - SCJP Questões de Arrastar e Soltar Usando os fragmentos abaixo, complete o seguinte código de forma a compilar. Repare que você pode não ter que preencher todas as lacunas class AgedP { }} public AgedP(int x) { public class Kinder extends AgedP { public Kinder (int x) { (); }} Fragmentos : Use os fragmentos a seguir zero ou mais vezes AgedP super this ( ) { } ; 36

Instalação e Testes do Java SE e NetBeans Instalando o Java SE 6 no GNU/Linux e Windows o Testando a instalação o Primeiro aplicativo na mão. Instalando o IDE NetBeans 6.8 no GNU/Linux e Windows o Visão geral do Netbeans o Primeiro aplicativo A demonstração das instalações está disponível através de vídeoaulas criadas para os alunos do curso. 37

Bibliografia Recomendada HORSTMANN, C. Core Java 2 vol 1: Fundamentos. Makron Books. 38

Bibliografia Recomendada SINTES, A. Aprenda Programação Orientada A Objetos em 21 dias. Campus 39

Bibliografia Recomendada DEITEL, H. M.; Deitel, P. J. Java: Como Programar. Bookman. 40

Bibliografia Recomendada SANTOS, R. Introdução à Programação Orientada à Objetos. Campus. 41

Bibliografia Recomendada HORSTMANN, C. Horstmann. Big Java. Bookman. 42

Bibliografia Recomendada SIERRA, K. BATES B. Certificação Sun para Programador Java 5 43

Para Saber Mais Revistas Revista Mundo Java. http://www.mundojava.com.br Revista JavaMagazine. http://www.devmedia.com.br Artigos DOEDERLEIN, O. P. Eclipse x NetBeans. Os Grandes IDEs Open Source Comparados. Revista Java Magazine, ed. 53 44

Perguntas? 45