Vous êtes sur la page 1sur 35

nerd intelligence

open code
introduo
linguagem
nerdintelligence.info
Quem SOMOS
o nerd intelligence um projeto de compartilhamento de contedo relacionado a:
Negccic &
Tecac|cgiu du Iafcruc
acreditamos que quanto mais pessoas tenham tais conhecimentos a nossa
sociedade ser atingida por um turbilho de boas ideias. o projeto surgiu da no
popularizada troca que conhecimentos atravs, principalmente, das redes
sociais. por isso o nosso trabalho fornecer contedos como este para incentivar
o seu crescimento profissional como um verdadeiro nerd!
ac debe de ccea|ur e ccpur|i|hur
acac cca|eudc!
Projeto OPEN CODE
O nerd intelligence open code um projeto para ajudar os
interessados em aprender uma linguagem de programao.
temos a certeza que nada substitui o esforo pessoal na
aprendizagem de qualquer linguagem.
Este material compilado de diversas fontes: livros, apostilas,
sites, fruns e experincia pessoal.
Todas as dvidas, sugestes, crticas devem ser comentadas
no post ou enviadas para o nosso e-mail de contato:
nerd.intelligence@gmail.com
Do que iremos FALAR?
1. A histria da linguagem JAVA.............................................................
2. O que a tecnologia JAVA?.................................................................
3. Por que a tecnologia JAVA importante?.........................................
4. Como a tecnologia JAVA est relacionada a servios SOA/WEB?.
5. Mos a Obra: Vamos iniciar nossos estudos!....................................
6. Mos a Obra: Chegou a hora de codificar!.........................................
7. Hora da Prtica: Faa mais exerccios...............................................
8. Nossas Referncias..............................................................................
6
11
15
22
24
28
33
35
Captulo 1:
Primeiros passos.
Por onde comear a
programar?
1
A histria da
linguagem JAVA
No faa nada decorado ou porque algum
mandou. A histria do JAVA alm de matar
algumas curiosidade permite que voc
entenda a evoluo das tecnologias em
programao de cdigos computacionais.
A histria da linguagem JAVA
1991
Lanamento do GREEN PROJECT (bero do
JAVA) pela Sua Micrcqa|ea. Os mentores
do projeto foram: Patrick Naughton, Mike Sheridan
e James Gosling.
OBJETIVO:
Antecipar a prciu cadu do mundo digital.
Acreditavam na convergncia entre computadores e
eletrodomsticos.
A histria da linguagem JAVA
1992
13 pessoas e 18 meses de trabalho:
demonstrao funcional da ideia inicial, o
StarSeven (*7). Neste projeto foi criado o Duke
que, como um guia virtual para os usurios do
sistema. Nasce a linguagem Ouk.
MERCADO:
Controle de televises e vdeo por demanda, surge o
MovieWood que no deu certo.
A histria da linguagem JAVA
HOJE
A ideia pregada pelo *7 com o MovieWood
hoje realidade em programas interativos
e nas televises digitais; ondo o usurio pode
interagir com o equipamento on demand.
RESULTADO:
Ideia certa na poca errada!
A histria da linguagem JAVA
1995
Gosling adapta o Oak para internet e o
rebatiza de JAVA. A finalidade era executar
nos Browsers os Applets Java. Esta tecnologia foi
disseminada rapidamente na rede.
2003
4 milhes de desenvolvedores por todo o
mundo tornaram a linguagem JAVA a mais
popular. Hoje padro de mercado.
2
O Que a
tecnologia JAVA?
Vamos comear a conversa tcnica. A
tecnologia JAVA uma linguagem de
programao e uma plataforma.
O que a tecnologia JAVA?
A linguagem de programao uma linguagem de alto nvel,
orientada a objetos. A linguagem no comum, porque os
programas so compilados e interpretados. A compilao, que
ocorre uma vez por programa, converte o cdigo Java em uma
linguagem intermediria chamada bytecode Java.
O bytecode analisado e executado (interpretado) pela Java
Virtual Machine (JVM) um conversor entre a linguagem e o
sistema operacional e hardware subjacentes.
Todas as implementaes devem emular a JVM, permitindo que
os programas Java sejam executados em qualquer sistema que
tenha uma verso da JVM.
O que a tecnologia JAVA?
A plataforma uma plataforma apenas de software que
executada sobre vrias plataformas de hardware. Ela possui trs
verses.
Consiste na JVM e na Application Programming Interface (API)
um grande conjunto de componentes de software prontos para
uso que facilitam o desenvolvimento e implantao de applets e
aplicativos. A API Java estende tudo, de objetos bsicos rede e
segurana, gerao XML e servios da Web. Est agrupada em
bibliotecas conhecidas como pacotes de classes e interfaces
relacionadas.
O que a tecnologia JAVA?
Junto com a API Java, cada implementao completa da
plataforma Java inclui:

1. Ferramentas de desenvolvimento para compilao, execuo,
monitoramento, depurao e documentao de aplicativos;
2. Mecanismos padro para implantao de aplicativos para usurios;
3. Kits de ferramentas da interface com o usurio que permitem criar
interfaces grficas com o usurio (GUIs) sofisticadas;
4. Bibliotecas de integrao que permitem que os programas acessem
bancos de dados e manipulem objetos remotos.
texto: www.ibm.com
3
Por que a
tecnologia JAVA
importante?
O que motiva o uso da tecnologia JAVA? Quais
as vantagens e facilidades no uso desta
tecnologia?
Por que IMPORTANTE?
O principal benefcio da linguagem Java a PORTABILIDADE
DE APLICATIVOS JAVA EM PLATAFORMAS DE HARDWARE E
SISTEMAS OPERACIONAIS possvel porque a JVM instalada e
entende em cada plataforma o mesmo bytecode.
A linguagem e a plataforma Java tem uma escala
impressionante. Fcil gravao em aplicativos com recursos
limitados. A linguagem ideal para desenvolvimento WEB,
estendendo a fora de computao
do usurio desktop.
Por que IMPORTANTE?
Os componentes da Web so suportados por plataformas de
tempo de execuo chamadas contineres de WEB, cujos servios
incluem o dispatch de pedidos, segurana, simultaneidade,
gerenciamento de ciclo de vida e acesso as APIs, tais como,
nomenclatura, transaes e e-mail.
No high end, servidores de aplicativos Java servem como
contineres de Web para componentes Java, XML e servios da
Web que podem interagir com bancos de dados e fornecer
contedo da Web dinmico.
Por que IMPORTANTE?
Trs edies da plataforma Java facilitam o trabalho dos
desenvolvedores de software, provedores de servios e
fabricantes de dispositivos e o direcionamento a mercados
especficos:
Vuriuea du P|u|ufcru Juvu
Por que IMPORTANTE?
JAVA SE (Java Plataform, Standard Edition):

O Java SE permite desenvolver e implantar
aplicativos Java em desktops e servidores, bem como
ambientes integrados e em tempo real. O Java SE inclui
classes que suportam o desenvolvimento de servios da
Web para Java e fornece a base para Java Platform,
Enterprise Edition (Java EE).
1
Por que IMPORTANTE?
JAVA EE (Java Plataform, Enterprise Edition):

A verso corporativa ajuda a desenvolver e implantar
aplicativos Java do lado de servidores transportveis,
robustos, escalveis e seguros. Construdo com base no
Java SE, o Java EE fornece APIs de servios Web, de
modelo de componente, de gerenciamento e de
comunicaes para implementar aplicativos SOA e da
Web 2.0 de classe corporativa.
2
Por que IMPORTANTE?
JAVA ME (Java Plataform, Micro Edition):

O Java ME fornece um ambiente para aplicativos de
execuo em uma grande variedade de dispositivos
mveis e integrados. A plataforma Java ME inclui
interfaces com o usurio flexveis, um modelo de
segurana robusto, uma grande variedade de
protocolos de rede integrados e suporte extensivo para
aplicativos em rede e off-line.
3
4
Como a tecnologia
JAVA est
relacionada a
servios SOA/
WEB?
Relaes entre Java e SOA/WEB
Uma arquitetura orientada a servios um modelo de
componente que relaciona as unidades funcionais de um
aplicativo por meio de interfaces e contratos bem definidos entre
os servios.
A interface definida de uma maneira neutra,
independentemente do hardware, sistema operacional e
linguagem de programao nos quais o servio implementado.
As SOAs so modelos alternativos fracamente acoplados para
os modelos mais tradicionais, altamente acoplados, orientados a
objetos.
5
MOS OBRA:
Vamos iniciar
nossos estudos!
Mos OBRA
O Foco na aprendizagem de qualquer linguagem de
programao a PRTICA. Portanto no ficaremos enrolando
com teoria e teoria. Vamos fazer de uma forma que no gere
confuso. Podemos dizer que esse material ser um LEAN JAVA
(Java enxuto). Se no decorrer do guia houver dvidas, elas podero
ser enviadas para o e-mail da pgina 3.
Fccc
Mos OBRA
Mquina Virtual
Uma mquina virtual funciona da seguinte forma:
A|guaa eac|ureciea|c udicicauia
Cdigo Fonte
Cdigo Binrio para
interpretao do SO
O SO s reconhece cdigos binrios (linguagem de mquina). Na
linguagem Java, o cdigo binrio (Bytecode Java) interpretado
por qualquer SO.
Mos OBRA
Nosso guia est focado na programao com o compilador
ECLIPSE (www. eclipse. org); exi stem mui tos outros
compiladores Java. Fique vontade em testar outros que trazer a
experincia adquirida no desenvolvimento com outros
compiladores.
Buae de ccdigc
6
MOS OBRA:
Chegou a hora de
codificar!
Mos OBRA
O main o primeiro mtodo que, quando compilado, ser
executado. Tudo no programa comea no main. Exemplo:
Muia
No se preocupe com o restante do cdigo; iremos falar de tudo
que est escrito na figura. O que est em verde o que aparece na
tela depois da compilao e execuo.
Mos OBRA
Seu compilador, ao executar o cdigo, transforma tudo em
ByteCode; no exemplo criado o PrimeiroPrograma.class
O que u p|u|ufcru fu cc c ccdigc?
O PrimeiroPrograma.class visvel para a virtual machine e,
assim, pode ser compilado em qualquer SO.
Mos OBRA
No PrimeiroPrograma nada do que foi escrito pode ficar de
fora. Nenhum ; pode ser esquecido.
Nudu pcde jcur de fcru
Se voc, por exemplo, esquecer esse ; do cdigo; no
momento de compilar o Eclipse retornar um erro de compilao,
ou seja, h erro no cdigo.
Mos OBRA
O Mtodo main sempre ser escrito com a estrutura descrita
abaixo:
Ea|ru|uru dc e|cdc Muia
No futuro falaremos mais detalhes destas palavras-chave:
como public, static, void,...
7
HORA DA
PRTICA: Faa
mais exerccios
Faa EXERCCIOS
1. Converse com colegas que
j programam, discuta sobre
dicas, compiladores, fruns
e ferramentas que auxiliem
seus estudos; no esquea de buscar materiais de apoio.
2. Instale o Eclipse atravs do endereo www.eclipse.org e use
para se familiarizar com o compilador que usaremos.
www.nerdintelligence.info | nerd.intelligence@gmail.com
Nossas REFERNCIAS
1. www.caelum.com.br
2. www.k19.com.br
3. www.guj.com.br
4. Paul e Harvey Deitel Java como programar 8Ed.
5. Kathy Sierra e Bert Bates Java use a cabea 2Ed.
Curta nossa pgina no
facebook