Vous êtes sur la page 1sur 52

Aula 4 Introduo a

Linguagem de
Programao Java
Prof. Pedro Baesse
pedro.baesse@ifrn.edu.br

Histria do Java

Motivos para usar Java

Caractersticas da Linguagem

Programao Orientada a Objetos com Java: Uma introduo prtica


usando BlueJ
David J. Barnes e Michael Klling
Editora Pearson / Prentice Hall

Java Use a Cabea

Java Como Programar

Simplesmente Java

Big Java

Kathy Sierra e Bert Bates


Editora Alta Books
Deitel
Editora Pearson / Prentice Hall
Michael Wenstrom
Editora Alta Books

Cay Horstmann
Editora Bookman

1991 Incio do Projeto Green


Linguagem Oak criada por James Gosling, Mike
Sheridan e Patrick Naughton.
Inspirada na UCSD Pascal de Niklaus Wirth, porm,
baseada em C++ (Unix)

1994 HotJava
Gosling desenvolve o navegador Webrunner depois
chamado de HotJava para demonstrar o uso de Java
no desenvolvimento de aplicativos para redes
O compilador Java, originalmente escrito em C,
reescrito em Java

1995 Incio da Era Java


Lanamento oficial da Linguagem Java, kit JDK 1.0
alpha
Netscape com suporte Java

1996 Lanamento do kit JDK 1.0


JVM para MacOS
Primeiro JavaOne

1997 Lanamento da verso 1.1


Conectividade de bancos de dados, servlets e
objetos distribudos
Novo modelo de eventos, internacionalizao,
modelo de componentes JavaBeans)
JDK 1.1.3 para Linux
JavaCard

1998 Lanamento do Java2


JDK 1.2 - JFC Swing e segurana
Formalizao do JCP Java Community Process
API Java 3D

1999 Edies da plataforma: J2SE, J2EE e


J2ME
Lanamento de JSP Java Server Pages
Apache Jakarta
Tecnologia JavaCard adotada como padro mundial

Java Standard Edition (JavaSE)


APIs padro, base da linguagem Java. Aplicaes
Desktop.

Java Micro Edition (JavaME)


APIs para aplicaes em micro-dispositivos (pda,
celulares, pagers,...)

Java Enterprise Edition (JavaEE)


Destinada aplicaes corporativas distribudas e
de arquitetura multicamadas.

2000 J2SE 1.3


400 grupos de usurios no mundo
JavaOne com mais de 25.000 desenvolvedores
NetBeans Open-Source

2000 J2SE 1.3


400 grupos de usurios no mundo
JavaOne com mais de 25.000 desenvolvedores
NetBeans Open-Source

2001 IDE Eclipse


J2ME para Linux
Catlogo J2EE Patterns
Lanamento do SDK J2EE 1.3

2002 Lanamento do JDK J2SE 1.4


Web Services Developers Pack 1.0
Java 3D API 1.3
MIDP 2.0
API Java Server Faces

Mais de 50 milhes de celulares J2ME

2003 java.net
500 grupos de usurios Java no mundo.
Anncio do prottipo do rob de explorao
enviado Marte.

J2ME Mobile 3D Graphics API.


J2EE 1.4

2003 java.net
500 grupos de usurios Java no mundo.
Anncio do prottipo do rob de explorao
enviado Marte.
J2ME Mobile 3D Graphics API.

J2EE 1.4

2004 J2SE 1.5 (Tiger)


Mais de 250 milhes de telefones mveis.
Projeto Looking Glass

Em 2003 a linguagem JAVA foi eleita pelo 4 ano


consecutivo a linguagem do ano pela revista Info
Exame

A tecnologia Java est em 100% das empresas


Fortune 500
78% dos executivos vem a linguagem Java como
a melhor plataforma para web services (fonte:
Giga, Computerworld);
O Java est instalada e rodando em quase 500
milhes de computadores desktop pelo mundo;

Mais de 300 milhes de smart cards seguros


baseados em ambiente Java j foram
distribudos;
Quase 1 bilho de SIM cards para telefonia
celular.
Quase 74% de profissionais que usam Java
como sua principal linguagem de
desenvolvimento, ultrapassando os 51% que
usam Visual Basic (segundo fonte: IDC).

Portabilidade

Uso Geral

Linguagem Distribuda (RMI, EJB)

Segurana (SandBox Caixa de Areia)

O cdigo binrio das aplicaes Java (byte codes) podem


ser executados em vrias plataformas sem nenhuma
alterao
Aplicaes que vo desde smart-cards at mainframes

Java possui APIs para a criao de objetos distribudos


onde partes de uma nica aplicao podem estar sendo
executada em vrias mquinas transparentemente.
Controle de segurana do ambiente de execuo das
aplicaes

Multithreading

Linguagem Dinmica (JCP)

Java e a Internet (Applets, Servlets / JSP)

Orientao a Objetos

Suporta a programao de aplicaes multitarefa


compostas por vrias linhas de execuo (threads)
O Java est em constante evoluo, suas extenses e sua
evoluo no so controladas por uma nica empresa, ou
por seu criador, mas sim pela comunidade
Total suporte para criao de aplicaes em rede
especialmente para Web.

Segue o paradigma de orientao a objetos.

Ambiente Open Source (Cdigo Aberto)


Sistema Operacional
Linux

Servidores Web
Apache (http://apache.org)
Tomcat (http://jakarta.apache.org/tomcat)
Jboss (www.jboss.org)

Ferramentas de Desenvolvimento (IDE)


Eclipse (www.eclipse.org)
NetBeans (www.netbeans.org)
BlueJ (www.bluej.org)

Gerenciadores de Bancos de Dados

MySQL
www.mysql.com

Postgrees
www.postgresql.org

HSQLDB
www.hsqldb.org

Firebird
www.firebirdsql.org

O cdigo compilado, gerando um conjunto de


instrues chamado de byte-code.
O byte-code aplicado Mquina Virtual Java (JVM)
que se encarrega de interpretar os comandos para o
SO onde o programa est rodando.
Ou seja, a mquina virtual traduz as instrues do
cdigo Java para instrues vlidas no SO em que
est rodando.
Esse byte-code poder ento ser interpretado por
qualquer mquina virtual Java (Linux, Windows, Palm
OS, Solari, etc).

O resultado gerado pelo ambiente de


desenvolvimento Java, embora interpretado
inicialmente, torna-se independente de
plataforma.
Simplifica o projeto de aplicaes de rede ou
aplicaes distribudas que tenham que operar em
ambientes heterogneos
Tambm permitir a incorporao de vrios
mecanismos de segurana na aplicao gerada

O Garbage-collection responsvel pela alocao


e liberao de memria

Quando uma varivel declarada a Java Virtual


Machine (JVM) cria um ponteiro para uma rea de
memria equivalente ao tamanho do tipo de
dado utilizado
Se a varivel associada a outra regio de
memria, a JVM coloca o espao alocado
anteriormente em uma pilha de objetos em
desuso naquele momento

Se o computador ficar com pouca memria


disponvel, a JVM remove os objetos dessa pilha,
realocando assim este espao de memria para
outra varivel
O processo de garbage-collection ocorre
automaticamente durante a execuo de um
programa Java
O programador no precisa se preocupar com
aritmtica de ponteiros (grande dificuldade em
linguagens como C e Pascal)

BlueJ um ambiente de desenvolvimento Java


Focado no nvel introdutrio
Criado pela Deakin University, Melbourne, Austrlia,
e a University of Kent at Canterbury, UK

Implementado em Java
Testado em Solaris, Linux, Macintosh e vrias verses
do Windows

Proporcionar um ambiente fcil de usar para


o aprendizado da linguagem Java

nfase especial para as tcnicas de


visualizao e interao
Ambiente altamente interativo
Incentiva a experimentao e explorao

Proporcionar um ambiente fcil de usar para


o aprendizado da linguagem Java

nfase especial para as tcnicas de


visualizao e interao
Ambiente altamente interativo
Incentiva a experimentao e explorao

Ambiente totalmente integrado

Mostrar a estrutura de classe grfica

Edio grfica e textual

Built-in editor, compilador, mquina virtual,


depurador...

Interface fcil de usar

Criao do objeto interativo

Chamadas de objetos interativas

Teste interativo

Desenvolvimento de aplicaes incremental

Kit de Desenvolvimento Java (Java


Development Kit - JDK), verso 6 ou superior
http://www.oracle.com/technetwork/java/javase/d
ownloads/index.html

BlueJ
http://www.bluej.org/download/download.html

Material didtico do Prof. MSc. Vladimir


Camelo

Material sobre BlueJ - mabesi.com

Vous aimerez peut-être aussi