(Adição de referência aos bytecodes) |
imported>Claudomiro Jr (Reorganização e "limpeza" do texto do artigo) |
||
Linha 1: | Linha 1: | ||
Linguagem de programação orientada a objetos | Linguagem de programação orientada a objetos projetada e implementada por um pequeno grupo de pessoas coordenado por [[James Gosling]] na empresa [[Sun Microsystems]] em 1991. Criada inicialmente com a finalidade se ser utilizada em eletrodomésticos, se tornou popular pelo seu uso na internet. | ||
==Principais Características== | |||
A linguagem Java foi projetada tendo em vista os seguintes objetivos: | |||
* Orientação a objetos - Baseado no modelo de Smalltalk e Simula67. | |||
* Portabilidade - Independência de plataforma. | |||
* Recursos de Rede - Possui extensa biblioteca de rotinas que facilitam a cooperação com protocolos [[TCP/IP]], como [[HTTP]] e [[FTP]]. | |||
* Segurança - Pode executar programas via rede com restrições de execução. | |||
Além disso, podem-se destacar outras vantagens apresentadas pela linguagem: | |||
* Sintaxe similar a [[Linguagem C]]. | |||
* Facilidades de Internacionalização - Suporta nativamente caracteres Unicode. | |||
* Simplicidade na especificação, tanto da linguagem como do "ambiente" de execução ([[JVM]]). | |||
* É distribuída com um vasto conjunto de bibliotecas (ou [[API]]s). | |||
* Possui facilidades para criação de programas distribuídos e ''multi-thread'' (múltiplas linhas de execução num mesmo programa). | |||
* Desalocação de memória automática por processo de ''garbage collector''. | |||
* Carga Dinâmica de Código - Programas em Java são formados por uma coleção de classes armazenadas independentemente e que podem ser carregadas no momento de utilização. | |||
==Máquina Virtual Java e principais críticas== | |||
Programas em Java não são traduzidos para "linguagem de máquina" como outras linguagens compiladas e sim para uma representação intermediária, chamada de ''bytecodes'', que por sua vez são interpretados pelo processador. Os críticos da linguagem afirmam que por causa desse processo, o código ''interpretado'' Java tem baixo desempenho. Porém, sucessivos avanços tornaram a otimização da máquina virtual Java (JVM) bastante eficiente, diminuíndo a diferença de performance entre Java e as linguagens compiladas tradicionais. | |||
Outro "defeito" apontado pelos críticos da linguagem é de que os ''bytecodes'' produzidos pelos compiladores Java podem ser facilmente usados num processo de "engenharia reversa" para a recuperação do programa-fonte original, mas esta é uma caracteristica que atinge em menor ou maior grau todas as linguagem compiladas. | |||
==Links Externos== | |||
* [http://java.sun.com/ Página oficial da Linguagem] | |||
* [http://today.java.net/jag/ Home-Page de James Gosling] | |||
[[de:Programmiersprache Java]] | [[de:Programmiersprache Java]] |
Edição das 01h36min de 25 de abril de 2004
Linguagem de programação orientada a objetos projetada e implementada por um pequeno grupo de pessoas coordenado por James Gosling na empresa Sun Microsystems em 1991. Criada inicialmente com a finalidade se ser utilizada em eletrodomésticos, se tornou popular pelo seu uso na internet.
Principais Características
A linguagem Java foi projetada tendo em vista os seguintes objetivos:
- Orientação a objetos - Baseado no modelo de Smalltalk e Simula67.
- Portabilidade - Independência de plataforma.
- Recursos de Rede - Possui extensa biblioteca de rotinas que facilitam a cooperação com protocolos TCP/IP, como HTTP e FTP.
- Segurança - Pode executar programas via rede com restrições de execução.
Além disso, podem-se destacar outras vantagens apresentadas pela linguagem:
- Sintaxe similar a Linguagem C.
- Facilidades de Internacionalização - Suporta nativamente caracteres Unicode.
- Simplicidade na especificação, tanto da linguagem como do "ambiente" de execução (JVM).
- É distribuída com um vasto conjunto de bibliotecas (ou APIs).
- Possui facilidades para criação de programas distribuídos e multi-thread (múltiplas linhas de execução num mesmo programa).
- Desalocação de memória automática por processo de garbage collector.
- Carga Dinâmica de Código - Programas em Java são formados por uma coleção de classes armazenadas independentemente e que podem ser carregadas no momento de utilização.
Máquina Virtual Java e principais críticas
Programas em Java não são traduzidos para "linguagem de máquina" como outras linguagens compiladas e sim para uma representação intermediária, chamada de bytecodes, que por sua vez são interpretados pelo processador. Os críticos da linguagem afirmam que por causa desse processo, o código interpretado Java tem baixo desempenho. Porém, sucessivos avanços tornaram a otimização da máquina virtual Java (JVM) bastante eficiente, diminuíndo a diferença de performance entre Java e as linguagens compiladas tradicionais.
Outro "defeito" apontado pelos críticos da linguagem é de que os bytecodes produzidos pelos compiladores Java podem ser facilmente usados num processo de "engenharia reversa" para a recuperação do programa-fonte original, mas esta é uma caracteristica que atinge em menor ou maior grau todas as linguagem compiladas.
Links Externos
de:Programmiersprache Java en:Java_programming_language eo:Gxavo fi:Java fr:Langage de programmation Java he:Java ja:Java nl:Programmeertaal Java pl:Java zh:Java编程语言