NOTA! Este site utiliza cookies e tecnologias similares.

Se não alterar as configurações do seu navegador, está a concordar com a sua utilização.

Compreendo
Questões mais Frequentes (FAQ) sobre Java

Questões mais Frequentes (FAQ) sobre Java

quinta-feira, 05 dezembro, 2002 /
Esclarecemos as suas dúvidas sobre a tecnologia que está a mudar a face das comunicações móveis? De onde vem o nome? Para que serve? O meu telefone suporta? Conheça aqui as respostas.
Porque é que o Java se chama assim?

Ao contrário do que muitos leitores poderão pensar o nome Java não tem nada a ver com a ilha do pacífico actualmente sob jurisdição indonésia nem surgiu porque a Sun se lembrou de contratar por tuta e meia uma resma de crânios informáticos asiáticos e fundar nessa parte do mundo uma unidade de investigação e desenvolvimento. midlet - screenshot

O termo «Java» vem da forma familiar que os norte-americanos usam para falar do... café. Daí também o símbolo empregue para identificar a tecnologia e suas aplicações: uma fumegante chávena do líquido negro.

Não existe razão nenhuma especial para se ter dado tal nome à tecnologia. Nenhuma além do esforço que os programadores normalmente fazem para dar um ar de familiaridade à informática, desmistificando o uso dos computadores.

Na mesma lógica, os componentes de software que trabalham com a Java (café) são chamados de «beans» («grãos», de café).

Consta que, originalmente, quem desenvolveu a tecnologia Java começou por lhe chamar «Oak». Porém, o nome já estava registado de forma que foi necessário arranjar uma alternativa...

Java, concretamente o que é isso? Que vantagens oferece?

A designação «Java» aplica-se a uma linguagem de programação desenvolvida originalmente pela multinacional Sun Microsystems. Os seus grandes trunfos assentam no facto de ser simultaneamente uma tecnologia multiplataforma e independente de qualquer plataforma.

Isto é possível porque a tecnologia Java consiste em dois componentes básicos: na linguagem de programação propriamente dita que permite criar aplicações para fins específicos e num «ambiente» sobre o qual estas correm.

Para executar uma aplicação Java concreta, seja com que sistema operativo for (Windows, Linux, Unix, Solaris, Mac Os, Symbian etc...) o utilizador deve ter pré-instalada uma máquina virtual Java. Esta integra hoje em dia a generalidade dos sistemas operativos para computador e PDAs e também, de forma crescente, nos telemóveis. A Sun disponibiliza sempre no seu sítio para descarga gratuita a última versão.

A beleza é que, ao realizar em Java as suas aplicações, o programador tem a certeza que elas são tendencialmente universalmente compatíveis e correrão em qualquer sistema operativo e não só em Windows, em Linux ou noutro qualquer...

A Java constitui assim uma espécie de «linguagem universal», uma «ponte equalizadora» entre sistemas operativos e também, nesta medida, originalmente, um trunfo contra o domínio do sistema operativo Windows da Microsoft.

Então a Java saiu do nada? Foi concebida do zero?

Não exactamente. A linguagem de programação Java é por exemplo, a nível da sintaxe (isto é, da forma como é escrita) bastante similar à pré-existente linguagem de programação C++. Porém, com uma diferença básica, enquanto a segunda requer a compilação prévia do código de forma a ser ajustada a um sistema operativo concreto (os utilizadores de Linux, em especial, estão forçosamente familiarizados com o conceito), no caso da Java o código é interpretado, dentro do sistema operativo, pela Máquina Virtual Java (MVJ). É isto que permite que uma mesma aplicação Java corra simultaneamente nos diversos sistemas operativos, graças à «mediação» operada pela MVJ.

A tecnologia Java que se usa nos telefones é a mesma que se usa nos PCs?

Não exactamente. Os dispositivos portáteis sejam eles agendas electrónicas (vulgo PDAs, Palm Pilots ou iPaqs, para usar duas designações comerciais mais conhecidas) ou telemóveis detêm um conjunto de recurso a nível do hardware (memória, capacidade de armazenamento e processamento etc...) substancialmente inferiores aos de um computador.

Assim sendo, existem fundamentalmente três versões da plataforma Java em função do fim a dar e do meio que a vai correr: a Java Entreprise Edition (J2EE), concebida para empresas e servidores com elevada exigência; a Java2Standard Edition (J2SE), implementada para uso doméstico e individual e a Java 2 Micro Edition (J2ME), concebida para pequenos dispositivos de massa, a nível da electrónica de consumo, como por exemplo os telefones.

A justificação é fácil de perceber. Basta pensar que o telemóvel Nokia 7650 detém 4 MB de memória dinâmica, sensivelmente a metade do tamanho da MVJ usada num computador de secretária. Não só não seria possível acomodar a segunda dentro dos recursos do primeiro como seria inútil pois esta suporta muitas funcionalidades simplesmente insusceptíveis de uso em aplicações concebidas para um telefone.

Assim sendo, apesar de funcionarem sobre uma plataforma comum, as aplicações Java obedecem, consoante o meio onde devam ser corridas, a especificações particulares. No caso da J2ME podemos, simplificadamente, vê-la como uma versão «abreviada» e «adaptada» da Java corrida em dispositivos mais complexos.

Java 2 Micro Edition (J2ME), MIDP e CLDC, o que são?

A Java empregue nos terminais móveis assenta nas especificações da J2ME, direccionada para dispositivos de recursos muito limitados. A aplicação desta incide, aplica-se e subdivide-se, por sua vez, em diversos perfis e configurações, concebidos para satisfazer as necessidade de outros tantos segmentos do mercado dos pequenos dispositivos da electrónica de consumo (desde telefones a PDAs a fornos microondas) .

No caso dos terminais móveis e PDAs o perfil aplicável está definido nas especificações MIPD (Mobile Information Device Profile).

As especificações MIPD foram elaboradas pela Sun, em colaboração com a dita Java Community Process, grupo que agremia centenas de fabricantes, operadores e programadores interessados. Consistem na opção por um conjunto de «libraries» (ficheiros de software que suportam dadas funções) requeridas para um tipo particular de dispositivo e na especificação de uma máquina virtual Java para o seu suporte. Definem ainda as funcionalidades de uso tais como o interface do utilizador, o armazenamento de dados local, o funcionamento em rede e a execução das aplicações.

É de notar que a Sun disponibilizou recentemente a versão 2 das especificações MIDP (MIDP2), constituída por uma selecção de APIs (application programming interfaces) tendo em vista o suporte para o HTTP, facilidades multimédia elementares que deverão estar disponíveis brevemente nas redes móveis (áudio e videostreaming), jogos, aplicações que requeiram a descarregar de dados da rede em geral e uma série de especificações de segurança.

O perfil MIDP, por si só, porém, não faz nada. Trata-se apenas de um conjunto de «pré-requisitos» que devem ser implementadas com determinada configuração.

Assentes na J2ME foram assim definidas duas configurações: a CDC (connected device configuration) e a CLDC (connected limited device configuration). Como o nome deixa antever a segunda corresponde a uma aplicação do MIPD para dispositivos de custo mais baixo e com menos recursos, tais como os telemóveis. A obediência às especificações CDC está reservada a terminais mais complexos e capazes do ponto de vista do hardware, já a pensar no futuro.

Relativamente à configuração CLDC a Sun oferece de seu moto duas máquinas virtuais Java: a KVM (K Virtual Machine), apropriada para terminais com apenas 160 KB de memória disponíveis para correr a Java (128 KB para a própria memória e o resto para as aplicações); e a CLDC HotSpot, uma implementação mais rica para telefones com pelo menos 512 KB de memória para a Java.

Portanto, ao conceberem particularmente um telefone móvel capacitado para correr Java, os fabricantes têm simultaneamente de ponderar o suporte das especificações J2ME a dois níveis: em relação ao perfil MIDP e em relação às configurações CLDC.

Posso adicionar Java ao meu dispositivo móvel? E actualizá-la?

Os dispositivos móveis com um sistema operativo e recursos de hardware capazes de suportarem Java vêm já, por definição, com uma máquina virtual instalada. Ou seja, se neste momento o seu telefone não detém Java é porque simplesmente não tem capacidade para isso. No caso dos terminais que já vêm com a Java instalada pode ser, isso sim, possível fazer a sua actualização.

Mas é mesmo realmente importante o meu telemóvel ter Java?

Estudos estimam que em 2002 cerca de 11 porcento dos telemóveis vendidos já dispunham de tecnologia Java e que, já a partir de 2005, a maioria dos terminais vendidos venha a dispor dela.

Se quer fazer do seu telemóvel mais do que um dispositivo para fazer e receber chamadas, tocar melodias e exibir logótipos; convertê-lo num instrumento dinâmico capaz de correr toda a espécie de aplicações à sua escolha (desde jogos a programas para calcular as marés; planetários, folhas de cálculo etc...) valerá bem a pena investir num terminal dotado desta tecnologia.

Hugo Valentim

12,091
Tags
Java