Você está na página 1de 33

20/05/2014

Desenvolvimento Java
Prof. Ms.Peter Jandl Junior
Centro Universitário Padre Anchieta

Desenvolvimento Java
Esta apresentação mostra as
Origem
características da plataforma de
programação Java e os recursos
básicos disponíveis na linguagem de Conceitos
mesmo nome.

Tecnologias

Aplicações

Futuro

(C) 2014, PJandl. 20/05/2014 2

1
20/05/2014

(C) 2014, PJandl. 20/05/2014 3

Um pouco de história
 Codinome: Green
 Onde: Sun Microsystems
 Quando: 1991
 Quem: James Gosling,
Patrick Naughton e Mike
Sheridan
 O que: desenvolver nova
plataforma de
dispositivos portáteis
inteligentes
 Porquê: o futuro (da Sun)

(C) 2014, PJandl. 20/05/2014 4

2
20/05/2014

Um pouco de história
 C/C++ se mostravam
inadequadas.
 Gosling decide criar
uma nova linguagem de
programação: Oak.
 Equipe desenvolve
novo hardware e um
mini sistema
operacional para dar
suporte ao Oak.

(C) 2014, PJandl. 20/05/2014 5

Um pouco de história
 07/Setembro/1992:
 *7 (Star Seven) está
pronto!
 O que era o *7?
 Um PDA
(Personal Digital Assistant)
 Segundo Gosling:
“In classic Sun form,
Everything...”

(C) 2014, PJandl. 20/05/2014 6

3
20/05/2014

Um pouco de história
 Combinação de:
 Crescimento da internet
 Necessidade de tecnologias
de ativas
 Ambiente heterogêneo
 Levou à criação do:
 Browser WebRunner
 Applets Oak
 Sun World’95:
 Plataforma Java
 Browser HotJava.

(C) 2014, PJandl. 20/05/2014 7

Java? Que nome é esse?


É realmente uma
ilha localizada no
Oceano Pacífico,
que pertence à
Indonésia, onde fica
a cidade de Jakarta.

Região produz
variedade de café
com mesmo nome.

(C) 2014, PJandl. 20/05/2014 8

4
20/05/2014

Sun Java  Oracle Java


 Em 2009 a Oracle
adquiriu a Sun
Microsystems por
US$7.4bilhões.
 Motivação da
transação: o segmento
de negócio de maior
crescimento da Oracle
era/é baseado na
plataforma Java.

(C) 2014, PJandl. 20/05/2014 9

Hoje
 19 anos de existência.
 8 versões.
 Linguagem de
programação mais
usada da atualidade.
 Milhões de
downloads do JDK.

(C) 2014, PJandl. 20/05/2014 10

5
20/05/2014

(C) 2014, PJandl. 20/05/2014 11

Ideias do Java

 Linguagem puramente orientada a objetos.


 Sintaxe simples, semelhante a C++.
 Independente de plataforma
(bytecodes).
 Verificação forte de tipos.
 Dinâmica e extensível.

(C) 2014, PJandl. 20/05/2014 12

6
20/05/2014

Ambiente Java:portabilidade
Formato neutro de
código.

ByteCodes

J J J J J J J J
V A V A V A V A
M V M V M V M V
A A A A
C C C C

Outros
Win32/64 MacOS Linux SO

Java Compiler

Java Virtual Machine

(C) 2014, PJandl. 20/05/2014 13

Ideias do Java

 Permite o desenvolvimento de aplicações


distribuídas.
 Desempenho adequado: pode ser compilada
no instante da execução.
 Suporta múltiplas linhas de execução
(multithreading).
 Projetada com fortes mecanismos de
segurança.

(C) 2014, PJandl. 20/05/2014 14

7
20/05/2014

Ambiente Java:ciclo simplificado


• Texto simples ASCII
Editor • Arquivos com extensão .java

• Transforma programa em bytecodes


Compilador • Gera arquivos com extensão .class

• Carrega e verifica código


Máquina
Virtual
• Transforma em código nativo e executa

(C) 2014, PJandl. 20/05/2014 15

Ideias do Java

 Robusta: incorpora técnica moderna de


tratamento de erros.
 Ausência de ponteiros: não permite
manipulação de endereços de memória.
 Coleta automática de “lixo”
(automatic garbage collection).
 Não oferece herança múltipla
(multiple inheritance).

(C) 2014, PJandl. 20/05/2014 16

8
20/05/2014

Ideias do Java

 Suporte para definição de Interfaces.


 Acesso padronizado para bancos de dados
com JDBC (Java DataBase Connectivity).
 Integrável com outras linguagens
(JNI - Java Native Interface).
 Oferece construção de genéricos
(semelhante às templates).

(C) 2014, PJandl. 20/05/2014 17

Programa Mínimo

 Composto de:
 Uma classe
contendo o método:
public static void main(String [])
 que é o início convencionado dos programas Java.

É como nas
linguagens C,
C++ e C#!

(C) 2014, PJandl. 20/05/2014 18

9
20/05/2014

Programa--Exemplo
Programa Não existe código
fora da classe!

// declaração da classe Programas sempre


têm um main().
public class HelloWorld {
// declaração do início
public static void main (String a[]){
// código
for(int i=0; i<10; i++) {
System.out.println(”Java Hello World!”);
}
} No main() é disposto o
} código do programa ou
seu início.

(C) 2014, PJandl. 20/05/2014 19

Aqui usamos um
Outro Programa-
Programa-Exemplo pouco de orientação
a objetos.

// declaração da classe
public class OOHelloWorld { Programas sempre
// declaração do início têm um main().

public static void main (String a[]){


// declara e instancia objeto
Speaker obj = new Speaker ( );
// utiliza o objeto
obj.execute ( );
Declaração, instanciação
} (criação) e utilização de um
objeto da classe Speaker.
}

(C) 2014, PJandl. 20/05/2014 20

10
20/05/2014

Classe-
Classe -Exemplo
// declaração da classe
Campos armazenam
dados próprios de cada
public class Speaker { objeto da classe.
// atributo da classe
private String message;
// construtor default
public Speaker ( ) {
Construtores
preparam novos
message = "Java Hello World!";
objetos para uso.
}
// construtor parametrizado
public Speaker (String msg) {
message = msg;
}
// método
public void execute ( ) { Métodos são as
for(int i=0; i<10; i++) { operações (capacidades)
System.out.println(message);
de uma classe, realizadas
com seus dados.
}
}
}
(C) 2014, PJandl. 20/05/2014 21

(C) 2014, PJandl. 20/05/2014 22

11
20/05/2014

Plataforma Java::Divisões

(C) 2014, PJandl. 20/05/2014 23

Java SE
Standard Edition
 Inclui JVM e extensa API.
 Oferece infraestrutura
de desenvolvimento de
aplicações (clientes e
servidores).
 Base das tecnologias
Java EE e Java WS.
 Distribuído como:
 JDK (Java SDK)
 JRE (Java Runtime
Environment).

(C) 2014, PJandl. 20/05/2014 24

12
20/05/2014

JRE
Java Runtime
RuntimeEnvironment
Environment
 Conjunto mínimo requerido para execução de
aplicações Java desenvolvidas para plataforma
Standard Edition.
 Constituído de:
 JVM (Java Virtual Machine) para ambiente
selecionado;
 API (Application Programming Interface) da
plataforma; e
 Alguns programas utilitários.
 Admite uso de bibliotecas e extensões de
terceiros.
(C) 2014, PJandl. 20/05/2014 25

API
Application Programming Interface

(C) 2014, PJandl. 20/05/2014 26

13
20/05/2014

JRE
Java Runtime
RuntimeEnvironment
Environment
 Ambiente de execução padrão da plataforma.
 Versão Atual: JRE 8
 Download gratuito:
 http://java.oracle.com
 Muitas vezes instalado como plug in de
browsers, serve também para desktop.
 Existem alguns outras distribuições
disponíveis: IBM, openJDK , iceTea etc.

(C) 2014, PJandl. 20/05/2014 27

JDK
Java (Software)
(Software) Development Kit
 Conjunto de ferramentas para
desenvolvimento de aplicações Java:
 javac compilador java
 java Java Virtual Machine
 javadoc gerador de documentação
 E outras.

 Pacote mínimo não inclui ambiente visual


para desenvolvimento (IDE).

(C) 2014, PJandl. 20/05/2014 28

14
20/05/2014

JDK
Java (Software)
(Software) Development Kit
 É a ferramenta mais popular, considerada
padrão.
 Versão Atual: JDK 8
 Download gratuito:
 http://java.oracle.com
 http://openjdk.java.net
 Existem IDEs usados em conjunto:
 Projeto Eclipse, Oracle Netbeans,
IBM WebSphere etc.
(C) 2014, PJandl. 20/05/2014 29

Java EE
Enterprise Edition
 É uma especificação de
arquitetura de
software
multicamadas.
 Não é um produto,
mas um conjunto de
tecnologias que podem
ser associadas.

(C) 2014, PJandl. 20/05/2014 30

15
20/05/2014

Java EE::Arquitetura

(C) 2014, PJandl. 20/05/2014 31

Java EE::Tecnologias

(C) 2014, PJandl. 20/05/2014 32

16
20/05/2014

Java EE::Especificações/Tecnologias

Especificações
mais importantes!

(C) 2014, PJandl. 20/05/2014 33

JPA Paradigma atual de


desenvolvimento é OO.
Java Persistence
PersistenceAPI
API
Cliente  API que provê
facilidades para
Java EE Server
integração de
POJO
EJB
aplicações OO e
bancos de dados
Entity Manager
relacionais. Tecnologia relacional
é mais madura nos
Produtos integrados ao bancos de dados.
servidores de aplicação
JPA Provider Java EE.

SGBDR
Produto líder,
amplamente usado.
(C) 2014, PJandl. 20/05/2014 34

17
20/05/2014

EJB Residem no EJB


container dos servidores
Enterprise JavaBeans de aplicação JavaEE.

 Tecnologia de
componentes de
negócio:
 Não oferecem interface
homem-máquina.
 Oferecem serviços de
sessão, troca de
mensagens e acesso a
persistência de dados.
 São elementos
intermediários.

(C) 2014, PJandl. 20/05/2014 35

JSP (Java Server Pages


Pages)) Residem no web
container dos servidores
e JSF (Java Server Faces) de aplicação JavaEE.

 Tecnologias web para


construção de páginas.
 Oferecem integração
com browsers por meio
de:
 Páginas HTML
 Protocolo HTTP
Servidor Java EE
parcial (somente
 Podem implementar
web container). modelo MVC (model-
view-control).

(C) 2014, PJandl. 20/05/2014 36

18
20/05/2014

Java EE::Tecnologias Integradas


Aplicação
e-banking.
Aplicação
m-banking ou
ATM.

Componentes
compartilhados
por outros
sistemas
corporativos.

(C) 2014, PJandl. 20/05/2014 37

Java EE::Evolução

(C) 2014, PJandl. 20/05/2014 38

19
20/05/2014

Java Fx
Standard Edition
 Plataforma para
criação de aplicações
multimídia RIA (Rich
Interface Application).
 Suporta aplicações
para:
 Desktop, browser,
celulares, TVs,
videogames e top-
Estilo de
construção é bem
boxes.
diferente do Java
SE tradicional.

(C) 2014, PJandl. 20/05/2014 39

Java WS
Web Services
 Arquitetura de serviços
independente de
plataforma.
 Uso extensivo de
padrões:
 XML
 SOAP
 HTTP

(C) 2014, PJandl. 20/05/2014 40

20
20/05/2014

(C) 2014, PJandl. 20/05/2014 41

Applet simples

(C) 2014, PJandl. 20/05/2014 42

21
20/05/2014

Outra Applet

(C) 2014, PJandl. 20/05/2014 43

JavaSE  IDE Eclipse

(C) 2014, PJandl. 20/05/2014 44

22
20/05/2014

JavaSE  IDE NetBeans

(C) 2014, PJandl. 20/05/2014 45

Java EE  GlassFish

(C) 2014, PJandl. 20/05/2014 46

23
20/05/2014

JavaEE  JBoss

(C) 2014, PJandl. 20/05/2014 47

Java ME  Celulares

(C) 2014, PJandl. 20/05/2014 48

24
20/05/2014

JavaME  BluRay

(C) 2014, PJandl. 20/05/2014 49

JavaME  Ricoh Printer Family

(C) 2014, PJandl. 20/05/2014 50

25
20/05/2014

Java Fx

(C) 2014, PJandl. 20/05/2014 51

JavaFx

(C) 2014, PJandl. 20/05/2014 52

26
20/05/2014

JavaFx

(C) 2014, PJandl. 20/05/2014 53

Java  Android

(C) 2014, PJandl. 20/05/2014 54

27
20/05/2014

Java  Android

(C) 2014, PJandl. 20/05/2014 55

Java  Android

(C) 2014, PJandl. 20/05/2014 56

28
20/05/2014

Java  Android

(C) 2014, PJandl. 20/05/2014 57

(C) 2014, PJandl. 20/05/2014 58

29
20/05/2014

O Futurodo Java
Desde seu lançamento, a plataforma Java evoluiu continuamente com o aprimoramento
da linguagem, ampliação da API e incorporação de novas tecnologias. Mas ainda existe
muitas novas possibilidades para sua evolução!

(C) 2014, PJandl. 20/05/2014 59

Certificação Profissional

Complementa e
amplia conhecimentos técnicos.

Comprova know-how
especializado.

Valoriza formação
acadêmica.

Diferencia o profissional.

(C) 2014, PJandl. 20/05/2014 60

30
20/05/2014

CertificaçãoProfissional
Grandes empresas proprietárias de tecnologias dominantes no mercado tem seus próprios
programas de certificação profissional.

(C) 2014, PJandl. 20/05/2014 61

Certificação Básica em Java


R$ 326,00
 Duração da Prova:
140min
 Pontuação mínima:
77%
 Conteúdo:
 (1) Java Básico
 (2) Tipos de Dados Java
 (3) Uso de operadores e decisão
 (4) Criação e uso de arrays
 (5) Uso de repetição
 (6) Métodos e encapsulamento
 (7) Tratamento de exceções
 (8) Herança.

(C) 2014, PJandl. 20/05/2014 62

31
20/05/2014

Certificação Intermediária em Java


R$ 326,00
 Duração da Prova:
150min
 Pontuação mínima:
65%
 Conteúdo:
 (1) Projeto de classes
 (2) Princípios de OO
 (3) Genéricos e coleções
 (4) Processamento de strings
 (5) Exceções e asseções
 (6) Fundamento de Java I/O
 (7) Aplicações com JDBC
 (8) Threads
 (9) Concorrência
 (10) Localização

(C) 2014, PJandl. 20/05/2014 63

Certificação Profissional
• Roteiro simplificado
• Planejamento
• Preparação (estudo)
• Compra do voucher
do exame
• Agendamento do
exame
• Realização do exame
• Certificação

(C) 2014, PJandl. 20/05/2014 64

32
20/05/2014

(C) 2014, PJandl. 20/05/2014 65

Recomendações de Estudo
 Livros:
 Java – Guia do
Programador, 2ª Edição,
P. JANDL Jr, Novatec.
 Java 6- Guia de Consulta
Rápida
P. JANDL Jr, Novatec.
 Java 5- Guia de Consulta
Rápida
P. JANDL Jr, Novatec.
 Introdução ao Java
P. JANDL Jr, Berkeley.

(C) 2014, PJandl. 20/05/2014 66

33

Você também pode gostar