Vous êtes sur la page 1sur 38

Java Básico

Colaboradores

• Paloma Costa paloma.costa@gmail.com

• Guilherme Elias deixapramim@gmail.com

• Daniel Wildt dwildt@gmail.com

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
• Teoria
o Histórico
o Tecnologia Java
o Características
o Tendências e Caminhos
o Padrões de Compatibilidade
o Ferramentas

• Prática
o 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 estoque
o 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 Kit
o 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 dispositivos


o JavaCard, Dispositivos Móveis, Jogos

JugDay 2008
Java FX

– É open-source e existe uma grande integração com


outros aplicativos da linha como o J2ME, J2EE e
J2SE.
– 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 API
o http://java.sun.com/reference/api/

JugDay 2008
Demonstração

JugDay 2008
Parte Prática

JugDay 2008
Tarefas

• Escrever o Programa

• Ferramenta Utilizada
o NetBeans6.01

• Saída de Arquivos:
o Java
o 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-Aula0
• 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

Vous aimerez peut-être aussi