Você está na página 1de 11

20/08/2015

Prof. Dr. Adriana Aparicio adriana.nascimento@uva.br


Prof. Dr. Eng Carlos Sics caugusto.sicsu@uva.br
Curso de Engenharia Ciclo Bsico

Histria da Linguagem Java


A tecnologia Java foi criada como uma ferramenta de programao em
computao, parte de um pequeno trabalho annimo e secreto chamado "the
Green Project" da Sun Microsystems em 1991.
A equipe "Green Team", um grupo secreto formado por 13 pessoas e liderado
por James Gosling, trancou-se em um escritrio annimo na Sand Hill Road em
Menlo Park e trabalhou dia e noite por 18 meses, isolado de toda a
comunicao com a Sun.
Eles estavam tentando antever e planejar a "nova onda" na computao. Sua
primeira concluso foi que ao menos uma tendncia significativa seria a
convergncia de computadores e de dispositivos controlados digitalmente.
O resultado foi uma linguagem de programao no atrelada a dispositivos,
apelidada de "Oak".

20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

20/08/2015

Histria da Linguagem Java


Para demonstrar como essa nova linguagem poderia impulsionar o futuro
dos dispositivos digitais, a equipe Green Team desenvolveu um controlador
porttil para sistemas de entretenimento domstico voltado para o setor
de televiso digital. A ideia estava muito frente de seu tempo e o setor de
TV digital no estava preparado para o incrvel avano oferecido pela
tecnologia Java.
Mas a Internet estava pronta para essa tecnologia e, bem a tempo para sua
apresentao pblica em 1995, a equipe pde anunciar que o navegador
Netscape Navigator passaria a incorporar a tecnologia Java.
Atualmente a tecnologia java conta com dezenas de milhes de
desenvolvedores de software, usada em todos os principais setores no
mundo inteiro e est presente em uma ampla gama de dispositivos,
computadores e redes de todas as tecnologias de programao.

20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

Atualmente, voc pode encontrar a tecnologia Java em redes e


dispositivos que vo desde a Internet e supercomputadores
cientficos a laptops, tablets e telefones celulares, de simuladores de
mercado da Wall Street a dispositivos para jogos e cartes de
crdito, simplesmente em todo lugar.
A melhor forma de saber mais sobre essas aplicaes explorar o
site java.com, o maior ponto de venda, mostrurio e recurso
centralizado de informaes para empresas, consumidores e
desenvolvedores de software que usam a tecnologia Java.

20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

20/08/2015

O que a Tecnologia Java?


Uma linguagem de programao
Um ambiente de desenvolvimento
Um compilador, um interpretador, um gerador de
documentao, etc.
Uma biblioteca de classes pr-compiladas
GUI, colees, networking, etc.
Um ambiente para a execuo dos aplicativos

20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

Tecnologia Java: Uma Linguagem de Programao.


Como uma linguagem de programao, voc pode criar em
Java todos os tipos de aplicaes que voc criaria usando
qualquer outra linguagem de programao convencional.

20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

20/08/2015

Tecnologia Java, um ambiente de desenvolvimento


Como um ambiente de desenvolvimento, a tecnologia Java
fornece um grande conjunto de ferramentas:
Um compilador (javac)
Um interpretador (java)
Um gerador de documentao (javadoc)

20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

Tecnologia Java, um ambiente para a execuo de


aplicativos.
As aplicaes construdas usando a tecnologia Java,
tipicamente, rodam em qualquer mquina onde esteja
instalado o ambiente de execuo (JRE)
Existem dois ambientes principais de execuo:
A JRE fornecida com o Java 2 Software
Development Kit (SDK)
Um browser web, a maioria dos browsers
comerciais fornece um interpretador Java e um ambiente
de execuo.
20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

20/08/2015

Algumas Caractersticas da linguagem Java:


A mquina virtual Java (JVM)
A mquina virtual Java uma mquina imaginria
emulada por software em uma mquina real;
Diferentes verses da JVM para cada tipo de
computador ou sistema operacional;
A JVM permite que os aplicativos Java sejam
independentes de plataforma uma vez que a
compilao feita para uma mquina genrica.
20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

Algumas Caractersticas da linguagem Java:


Bytecodes:
Bytecode uma linguagem de mquina especial
que pode ser entendida pela JVM.
Os bytecodes so independentes do hardware do
computador e do sistema operacional, qualquer
computador com o interpretador Java apropriado
pode executar o programa Java compilado.
Os bytecodes gerados independem do tipo de
computador onde o programa foi compilado.
20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

10

20/08/2015

Fases de um programa em linguagem java:

Editor

Prog.java

Compilador

Prog.class

Interpretador

O cdigo compilado uma vez, gerando o


bytecode, que pode ser interpretado quantas
vezes forem necessrias e em qualquer
ambiente java (JVM) existente.

20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

11

Exemplo de programa em linguagem java:


public class Alo {
/**
Meu primeiro programa Java
*/
public static void main(String[] args) {
// Impresso na tela
System.out.println("Alo mundo!");
}
}
20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

12

20/08/2015

O Android
O Android um Sistema Operacional, ambiente de
execuo para sistemas de aplicao. responsvel
por controlar o sistema como um todo, ou seja,
controla todos os dispositivos e componentes do
sistema. Foi concebido para uso em dispositivos
mveis, tais como, smartphones e tablets.
uma verso do Sistema Operacional Linux voltada
para dispositivos mveis.

20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

13

Histrico do Android
A primeira verso foi lanada em 2008;
Em 2010 houve um aumento de 707% em um nico
semestre;
Em 2011 o Android era responsvel por 37% do
mercado de smartphones, seguido de 27% do iOS da
Apple e de 22% do Blackberry;
Em agosto de 2010 eram ativados perto de 200.000
smartphones com Android por DIA, j em junho de
2011 eram mais de 500.000 (por dia) ;
Hoje em dia existe um consrcio com 81 empresas
unidas para impulsionar a inovao na tecnologia
mvel.
20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

14

20/08/2015

Uma nova pesquisa vem nos mostrar como est


no momento o mercado de smartphones pelo
mundo. De acordo com a BI Intelligence, a
plataforma mais usada o Android com 72%.
J o iOS, ainda em segundo lugar, perdeu um
pouco de sua parcela de mercado, estando agora
na mo de 18% dos usurios de smartphones,
tendo descido de 19%. J o BlackBerry desceu de
9% para apenas 4%. O Windows Phone ganhou
um pequeno aumento, estando agora em 2,9%.
20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

15

Vantagens e Desvantagens
O sistema operacional de cdigo aberto e
gratuito, sendo assim, pode-se obter e conhecer o
cdigo fonte do sistema operacional, mas por outro
lado, o cdigo aberto acaba por ser de domnio
pblico permitindo um alto conhecimento do
mesmo por muitas pessoas e impactando na
segurana.

20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

16

20/08/2015

Os aplicativos Android so desenvolvidos na linguagem


Java, que a linguagem mais usada no mundo. A
linguagem Java tambm aberta e de cdigo livre. O
Java usado tanto para criao de aplicaes
empresariais, servios Web, controles de robs (NASA
com uso em Marte), como para diversos dispositivos
eletrodomsticos e mveis.
Atravs do Java, podemos usar APIs (interfaces de
programao de aplicativos) disponibilizadas pelo
Android diretamente, facilitando o desenvolvimento
de aplicativos que usam dispositivos especficos, tais
como: Cmeras, GPS, Vdeos, Fotos, udio (Msicas),
Interfaces grficas com uso de toques, etc.
20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

17

A linguagem Java permite o acesso a um conjunto de


bibliotecas com uma infinidade de cdigos prontos
para serem usados.
Para facilitar o desenvolvimento de aplicativos para o
Android, existe uma ferramenta de desenvolvimento
que auxilia o trabalho com as diferentes tarefas, que
o Eclipse. O Eclipse uma ferramenta de
desenvolvimento RAD (Rapid Application Developer)
para o Java, que j incorpora as funcionalidades para o
desenvolvimento para o Android, incluindo o ADT
(Android Development Tools) e o AVD (Android Virtual
Device) para testes em emuladores.
20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

18

20/08/2015

Os dispositivos Android disponibilizam aplicativos de fbrica que


incluem Telefone, Contatos, Correio, Navegador dentre vrios outros.
O Android muito atualizado e possui muitas verses, atualmente
estamos evoluindo da verso 5.0 para a verso 5.1 com algumas
novidades.
As principais verses do Android so:
Android 1.5: Cupcake
Android 1.6: Donut
Android 2.0 e Android 2.1: Eclair
Android 2.2: Froyo
Android 2.3: Gingerbread
Android 3.0: Honeycomb
Android 4.0: Ice Cream Sandwich
Android 4.4: Kit Kat
Todas as verses so batizadas com nomes de doces.
20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

19

O Google Android Market (Google Play):


uma loja virtual para aquisio de aplicativos, que
nada mais do que um aplicativo prprio para
aquisio, instalao e manuteno (atualizao)
das demais aplicaes. Existem aplicativos para
diversas reas e funes, desde de financeira,
educacional, jogos, entretenimento, cientficas,
engenharias, etc.
Os aplicativos disponibilizados podem ser pagos ou
gratuitos.
20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

20

10

20/08/2015

Entrega da definio do projeto:


Mximo 5 componentes identificando o curso de
cada um;
Cada grupo deve ter componentes de 2 ou mais
cursos;
Deve ser designado um responsvel pelo grupo
(com e-mail);
Cada grupo deve ter um nome;
As tarefas a serem realizadas por cada
componente estar definidas;
Os projetos sero avaliados individualmente
para posterior aprovao.
20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

21

Fim da Parte I

20/08/2015

Prof. Dr. Adriana Aparicio - Prof. Dr. Eng Carlos Sics

22

11