jugday - java básico
TRANSCRIPT
Java Básico
Colaboradores
• Paloma Costa [email protected]
• Guilherme Elias [email protected]
• Daniel Wildt [email protected]
JugDay 2008
Objetivos
• Apresentar os conceitos iniciais da Tecnologia Java e guiar os participantes em seus primeiros passos.
• Ao final, estará apto a escrever, compilar e interpretar seu primeiro programa!
• Tenham uma excelente apresentação!
JugDay 2008
Agenda
• Teoriao Históricoo Tecnologia Javao Característicaso Tendências e Caminhoso Padrões de Compatibilidadeo Ferramentas
• Práticao Primeiros Passos(Sintaxe)o Exercícios
JugDay 2008
Parte Teórica
JugDay 2008
O Criador
• Em 1991 por James Gosling
JugDay 2008
Histórico• Dispositivos Inteligentes e de
eletrodomésticos[TV´S interativas, torradeiras interativas, etc...]
JugDay 2008
O que é a Tecnologia Java?JugDay 2008
A Tecnologia Java é:
• Uma Linguagem de Programação
• Um ambiente de Desenvolvimento
• Um ambiente de Aplicação
• Um ambiente de Distibuição
JugDay 2008
Tecnologia Java• Linguagem de Programação
o Pode criar qualquer tipo de programa. o Inteligência Artificial, Robôs, Dispositivos
Móveis...
• Por exemplo, uma balança de comidas que executa uma JVM.o atualizar o controle de estoqueo receber atualizações de preços etc.
JugDay 2008
• Projeto Wonderland é um Ambiente Virtual 3D• Colaboração dentro do ambiente profissional,
como reuniões, discussões, resoluções etc.
JugDay 2008
• Helicóptero que voa em locais perigosos e inacessíveis, e captura imagens em tempo real.
JugDay 2008
• Robôs em Java Recebe instruções de uma aplicação que detecta
os contornos de uma foto, e desenha os traços com uma caneta de alta precisão.
JugDay 2008
Tecnologia Java• Ambiente de Desenvolvimento
Compilador(javac), Interpretador(java), Docs(javadoc), Empacotamento(jars)
JugDay 2008
Tecnologia Java
• Ambiente de Aplicação
Aplicações de tecnologia Java são tipicamente programas de propósito geral que executam sobre
uma máquina onde o Java Runtime Environment é instalado.
JugDay 2008
Tecnologia Java• Ambiente de Distribuição
JRE, Navegador Web
JugDay 2008
Características Java
• Orientada a Objetos;• Portabilidade• Robusta• Segura• Distribuída• Recursos de Rede• Simplicidade
JugDay 2008
Características Java
• Trabalha sobre uma JVM : Máquina imaginária implementada como uma aplicação de software em uma máquina real.
• Garbage Collector: libera espaço em memória.
• Técnicas OO e Padrões: necessita destas técnicas para um melhor
aproveitamento.
JugDay 2008
Ambiente Java
• JSDK/JEE/JME - Software Development Kito Máquina Virtual Java – compila e interpreta.o Bytecodes, linguagem de máquina, interpretador.
• JVM – Virtual Machine o Sun, GCJ, Kaffe, Classpath, IBM
• JRE – Runtime environment
JugDay 2008
Escolha uma tendência, escolha o seu caminho!
JugDay 2008
JEE – Java Enterprise Edition
Desenvolvimento Web (Servidor)• Servlets - desenvolvimento web (padrão CGI)• JSP – Java Server Pages - criação de páginas dinâmicas (<% %>)
através de scriptlets• JSF – Java Server Faces – Criação de páginas “ligadas” Struts.
JugDay 2008
JSE – Java Standard Edition
• Desenvolvimento Desktop (Cliente)
• SWT (Standard Widget Toolkit) • AWT (Abstract Window Toolkit)• Swing• Thinlet JugDay 2008
JME – Java Micro Edition
• Desenvolvimento para pequenos dispositivoso JavaCard, Dispositivos Móveis, Jogos
JugDay 2008
Java FX
– É open-source e existe uma grande integração com outros aplicativos da linha como o JME, JEE e JSE.
– Exemplo
JugDay 2008
Integração de Linguagens de Script
• Groove é uma linguagem de programação projetada para ser interpretada, (como Perl e PHP), porém derivada e compatível com Java (linguagem de programação).
• JRuby permite que você rode seus scripts Ruby na máquina virtual Java.
• Jython é uma implementação da linguagem Python que gera bytecode para máquinas Java .
• Vantagens – É possível fazer o desenvolvimento de aplicações híbridas que unem
código– É muito útil para embutir uma linguagem para criação de scripts em
aplicações que requerem este tipo de funcionalidade.
JugDay 2008
Certificações
JugDay 2008
Padrões de Compatibilidade
• JCP(Java Community Process http://jcp.org)• Foco em Compatibilidade e Multiplataforma• Qualquer um pode participar (JSR's)
HP, IBEA, IBM, Intel, Oracle, Google• O processo é aberto desde o início
JugDay 2008
Software Livre & Java
• Java não é software, é uma especificação!
• As implementações de Java que podem ser software livre!!!
JugDay 2008
Vantagens
• Linguagem Multiplataforma;
• Grande quantidade de soluções e ferramentas de apoio gratuitas;
• Código Aberto a partir da 5º edição(13/11/2006).
JugDay 2008
Ferramentas
• JSDK 1.6.X (http://java.sun.com)• IDE para desenvolvimento Java:
o NetBeans (http://www.netbeans.org)o Eclipse (http://www.eclipse.org)
• Documentação APIo http://java.sun.com/reference/api/
JugDay 2008
Demonstração
JugDay 2008
Parte Prática
JugDay 2008
Tarefas
• Escrever o Programa
• Ferramenta Utilizadao NetBeans6.01
• Saída de Arquivos:o Javao Class (Bytecode)o Execução do Programa
JugDay 2008
public class OlaMundo { /** * Método que executa o programa * public = É visto em qualquer lugar da aplicação * static = é iniciado automaticamente pela JVM, sem precisar que seja chamado por algum objeto * void = Método sem retorno * main = Nome do método, que é obrigatorio ser este. Recebe como parâmetro um array de String. * */ public static void main(String[] args) { System.out.println("Olá, Mundo!"); //Imprime na tela } }
JugDay 2008
Exercícios
JugDay 2008
Dicas de Livros
Referências
• Notícias Java One http://www.devmedia.com.br/articles/viewcomp.asp?comp=5403&hl=
• Projeto Wonderland http://lg3D-wonderland.dev.java.net• Curriki
http://www.curriki.org/xwiki/bin/view/Coll_DanielWildt/FUJA-NivelamentoJava1-Aula01• JEDI http://jedi.wv.com.br/• Certificações • JavaFX https://openjfx.dev.java.net/#demos
JugDay 2008
Perguntas
Java é uma linguagem? É uma plataforma? Tecnologia?
Arquitetura? É free?
Muito Obrigada!!
JugDay 2008