Ambiente Java
No início desta década, a Sun (uma das principais empresas de alta tecnologia) iniciou o desenvolvimento de um novo ambiente de execução de programas. Entretanto há apenas 3 anos o ambiente Java foi finalmente lançado no mercado.
Essencialmente o ambiente consiste em três elementos: uma máquina virtual que executa aplicativos Java, uma linguagem chamada Java e um verificador de byte code. Embora separadamente cada elemento já apresente vantagens, é o conjunto que faz do Java um ambiente especial. Totalmente orientado a objetos (exceto por herança múltipla, mas discutiremos isso em outra oportunidade), seguro e adequado para execução em rede e portável. Isto era exatamente o ambiente necessário para a concretização da Computação de Rede. Atualmente Java e NC complementam-se perfeitamente e praticamente não há outras soluções que mereçam a classificação de NC.
Gostaríamos de apresentar logo todas as diferenças entre as soluções NC com Java e com outros sistemas, contudo este assunto seria muito longo e mais técnico do que pretendemos nesta apresentação. Por hora nos concentraremos apenas em cada uma das três principais "partes" do ambiente Java.
A linguagem Java é certamente o item mais popular, a ponto de se falar normalmente NA Java. Realmente é uma boa linguagem orientada a objetos (OO), claramente desenvolvida à partir do C++. Contudo, ao contrário da linguagem C++, a Java não permite a violação de princípios OO, como encapsulamento. Seria justo dizer que a Java é diferenciada do C++ muito mais pelo que não pode fazer do que pelo que faz a mais. Calma! Isto não é, necessariamente, uma desvantagem, afinal códigos OO utilizando este tipo de violação (possível no C++) acabam fadados a serem um tipo de tecnologia híbrida, nem estruturada, nem OO, dificultando não só a manutenção como também a reutilização e aproveitamento em tecnologias OO mais recentes e avançadas, como CORBA e OpenDoc. Vale lembrar que o aplicativo escrito em Java deve ser compilado para o código objeto do ambiente de execução - a Java Virtual Machine - e programas em outras linguagens OO atualmente podem ser compilados para o mesmo código objeto.
É na JVM que o ambiente começa a mostrar vantagens. A JVM foi projetada para ser uma camada entre os aplicativos Java e os diversos sistemas operacionais (atualmente existe JVM para vários: Unix, OS/2, Windows 9x/NT, Macintosh, Windows 3.X etc.) e mesmo dispositivos de hardware dotados de processadores Java (ainda não lançados). O ambiente JVM já conta com todas as classes necessárias aos acessos mais críticos para a segurança de dados, como acesso a disco ou tráfego pela rede, e não permite que estas classes sejam substituídas por outras provenientes da rede à revelia do usuário. Esta é uma das principais razões do casamento entre Java e NC. A porção do ambiente dedicada a esta verificação é o Byte Code Verifier. É evidente que há diversos outros recursos como Garbage Colector (dedicado a remover um objeto da memória quando desnecessário), Class Loader (que busca e carrega as classes necessárias mesmo que espalhadas pela rede) e Just In Time compiler (o JIT) que produz transparentemente um tipo de código ativo para o sistema atual, a fim de garantir maior performance.
Respostas recomendadas
Não há comentários para mostrar.
Crie uma conta ou entre para comentar
Você precisa ser um usuário para fazer um comentário
Criar uma conta
Crie uma nova conta em nossa comunidade. É fácil!
Crie uma nova contaEntrar
Já tem uma conta? Faça o login.
Entrar agora