260 likes | 388 Views
Aula 1 - Fundamentos Java SE. Linguagens de Programação II. Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas. Prof. Gilmar Medeiros – Agosto/2009. Outline. Histórico da Linguagem Apresentação das Tecnologias Java Java SE, EE, ME e FX
E N D
Aula 1 - Fundamentos Java SE Linguagens de Programação II Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros – Agosto/2009
Outline • Histórico da Linguagem • Apresentação das Tecnologias Java • Java SE, EE, ME e FX • Paradigmas mais comuns de programação • Java Standard Edition: desenvolvimento desktop: • Características: vantagens e desvantagens; • Comparação com a linguagem C/C++ • Notação básica e primeiros programas desenvolvidos em Java
Java - Histórico • 1991 - Inicialmente idealizada para uso em dispositivos inteligentes de pequeno porte: • Geladeiras, controles remotos, dispositivos portáteis • Primeiramente chamada Oak, rebatizada como Java – sintaxe baseada em C++; • Alavancada em 1995, com a popularidade da Web, proporcionando suporte a conteúdo dinâmico; • Hoje encontrada nas mais variadas edições, com suporte a diversos tipos de dispositivos
Tecnologias ou Edições Java • Java Standard Edition – Java SE • Java Enterprise Edition – Java EE • Java Micro Edition – Java ME • Java FX – ver site http://java.sun.com/javafx/index.jsp
Paradigmas Comuns de Programação • Linguagens Concorrentes • Linguagens Procedurais • Linguagens Orientadas a Objetos • Etc.
Java SE: Apresentação • Possibilita o desenvolvimento de aplicações desktop: • Aplicações de linha de comando; • Aplicações com interfaces gráficas Swing: pacote javax.swing (ver, em Java Tutorial: http://java.sun.com/docs/books/tutorial/ui/index.html) • IDEs: permitem o desenvolvimento rápido das aplicações. Ex: NetBeans e Eclipse
Java SE: Características • Portabilidade dos programas compilados, para diversos SOs, não necessitando recompilação – característica multiplataforma • Sintaxe similar ao C – fácil aprendizado • Baseada e orientada a objetos • Possui uma extensa API, extremamente atualizada e de acordo com a realidade da maioria dos programadores
Java SE: Comparação com C/C++ • A linguagem Java é considerada uma “evolução” das linguagens C/C++, onde: • Permite a criação de programas realmente portáveis, sem a necessidade de recompilação ou alteração de código; • Possui o gerenciamento de memória embutido, através do garbagecollectorou coletor de lixo • Não faz uso explícito de ponteiros, o que representa uma facilidade de programação, sendo menos sujeita a erros de código; • Usa conceitos modernos, como a orientação a objetos, suporte a multithreading, etc.
Java: Ambiente de Desenvolvimento - I • Fase 1: editor de textos comum, criação do arquivo .java; • Fase 2: Compilação – geração do arquivo de bytecodes .class; • Os bytecodes serão executados pela Java Virtual Machine (JVM) – camada que simula um computador, ocultando o SO e hardware; • A JVM é responsável pelas características de portabilidade do código Java • Fase 3: carregamento do programa .class em memória – “load class”
Java: Ambiente de Desenvolvimento - II • Fase 4: Verificação dos bytecodes • Fase 5: Execução dos bytecodes, realizando as ações determinadas pelo programa: • Compilação JIT (just-in-time) – misto de interpretação e compilação, traduzindo os bytecodes para linguagem de máquina • Obs: diversas otimizações de compiladores são possíveis, sendo o compilador do Eclipse IDE considerado um dos mais otimizados
Java: Notação Básica • Estruturas básicas similares ao C: • Ex. 1: int a = 3; int b = 6; int c = 0; if (a >= b) { c = a + b; } else { c = a * b; } • Ex. 2: for (int i=0;i<10;i++) { System.out.println(“Iteração[“ + i +”]”); }
Java: Primeiros Passos • Ex. programa FirstTest.java: public class FirstTest { public static void main (String args[]) { System.out.println(“Alo Mundo!”); } }
Java: Compilação e Execução • Compilação: • javac - Ex: javac FirstTest.java • Gera um arquivo <nome-arquivo>.class • Execução: • java – Ex: java FirstTest • Obs: Se refere ao FirstTest.class, não ao FirstTest.java • Obs. 2: Se não houver o arquivo .class, não haverá execução
Bibliografia e Recursos - I • * DEITEL & DEITEL: Java – Como Programar. Editora Prentice Hall, 6a Edição. ISBN: 8576050196 • WEST, DAVID; MCLAUGHLIN, BRETT: Use a cabeça: Analise & Projeto orientado ao objeto. Alta Books, 1a Edição, 2007. ISBN: 8576081458 • BATES, BERT; SIERRA, KATHY: Use a cabeça! - Java. Alta Books,1a Edição, 2005. ISBN: 8576080842 • * BATES, BERT; SIERRA, KATHY: SCJP: Certificação Sun para Programador Java 5 - Guia de Estudo. Alta Books, 2ª Edição, 2006. ISBN: 8576081334.
Bibliografia e Recursos - II • www.java.sun.com • Java Developers Almanac: http://www.exampledepot.com/ • Java Tutorial: http://java.sun.com/docs/books/tutorial/ • Java SE 6 – APIs: http://java.sun.com/javase/6/docs/api/ • Linguagem de script Groovy: http://groovy.codehaus.org/
Outline do Restante do Curso • Apresentação da notação básica Java; apresentação das APIs básicas de Java; introdução aos primeiros programas Java através de protótipos com o uso de classes como Scanner, dentre outras; • Apresentação de conceitos e práticas de Programação Baseada e Orientada a Objetos; • Apresentação da API java.io.*: definição de manipulação de arquivos e diretórios; operações básicas de I/O e fluxos • Conceitos e práticas de geração de interfaces gráficas desktop - “Swing” – com o uso de puro Java; • Técnicas de concorrência através do uso de multithreading • Práticas de projetos e uso de diagramas UML para desenvolvimento e prototipação Java
Extra - Testando um aplicativo Java • Test-drive de um aplicativo ATM: • Verificar a configuração do sistema. • Localizar o aplicativo ATM (Figura 1.2). • Executar o aplicativo ATM (Figura 1.3). • Inserir o número de uma conta (Figura 1.4). • Inserir um PIN (Figura 1.5). • Verificar o saldo da conta (Figura 1.6). • Retirar dinheiro da conta (Figura 1.7). • Confirmar que as informações de conta foram atualizadas (Figura 1.8). • Finalizar a transação (Figura 1.9). • Sair do aplicativo ATM.
Figura 1.2 | Abrindo um Prompt de comando do Windows XP e alterando diretórios. Localização do arquivo do aplicativo ATM. Utilizando o comando cd para mudar de diretório.
Figura 1.3 | Utilizando o comando javapara executar o aplicativo ATM.
Figura 1.4 | Solicitando o número de uma conta ao usuário. Mensagem de boas-vindas do ATM. Insira o número da conta.
Figura 1.5 | Inserindo um número de PIN válido e exibindo o menu principal do aplicativo ATM. Insira um PIN válido. Menu principal do ATM.
Informações sobre o saldo da conta. Figura 1.6 | O aplicativo ATM exibindo as informações de saldo da conta do usuário.
Menu de retirada do ATM. Figura 1.7 | Retirando dinheiro da conta e retornando ao menu principal.
Figura 1.8 | Verificando novo saldo. Confirmando as informações atualizadas de saldo da conta após a transação de retirada.
Figura 1.9 | Concluindo uma sessão de transação de um ATM. Prompt do número da conta para o próximo usuário. Mensagem de despedida do ATM.