imported>Josepojr Sem resumo de edição |
|||
Linha 23: | Linha 23: | ||
* {{en}} [http://smarteiffel.loria.fr/ - Compilador SmartEiffel] | * {{en}} [http://smarteiffel.loria.fr/ - Compilador SmartEiffel] | ||
*[http://se.ethz.ch/projects/benno_baumgartner/jeiffel.pdf - JEiffel] | *[http://se.ethz.ch/projects/benno_baumgartner/jeiffel.pdf - JEiffel] | ||
* {{en}} [http://www.jabaco.org/ - Compilador BASIC] | |||
[[Categoria:Java]] | [[Categoria:Java]] |
Edição das 11h43min de 9 de março de 2009
O código de um programa de computador escrito na linguagem Java é compilado para uma forma intermediária de código denominada bytecode, que é interpretada pelas Máquinas Virtuais Java (JVMs). É essa característica que faz com que os os programas Java sejam independentes de plataforma, executando em qualquer sistema que possua uma JVM. Cada opcode tem o tamanho de um byte - daí o seu nome - e assim o número de diferentes códigos de operação está limitado a 256. Os 256 possíveis valores para códigos de operação não são todos utilizados. Na verdade, alguns dos códigos foram inclusive reservados para nunca serem implementados.
Um programador Java não precisa entender - e nem tomar conhecimento - dos bytecodes Java para ser proficiente na linguagem, da mesma forma que um programador de qualquer linguagem de alto nível compilada para linguagem de máquina não precisa conhecer a linguagem de montagem do computador hospedeiro para escrever bons programas naquela linguagem.
Montadores de Bytecode Java
Existem alguns montadores que permitem que se escrevam programas diretamente em bytecodes Java. Normalmente, esse tipo de ferramenta é útil para desenvolvedores de compiladores, e também para se estudar detalhadamente o comportamento das máquinas virtuais Java disponíveis no mercado. Dentre os montadores de bytecode Java disponíveis destacam-se:
Outras linguagens
Existem compiladores para outras linguagens de programação que geram bytecode Java. Por exemplo:
- JGNAT e AppletMagic, que são compiladores para a linguagem Ada.
- Groovy, que é uma linguagem de script baseada em Java.
- JEiffel e SmartEiffel, que geram bytecode Java para a linguagem Eiffel.
- Conversores de C para Java que geram código diretamente para bytecode Java.
- Conversores de linguagem Pascal para Java e compiladores Pascal que geram bytecode Java.
Ligações externas
- (em inglês) - Livro sobre as especificações da JVM
- (em inglês) -Especificação da Máquina Virtual Java, contendo todos os códigos de operação do bytecode Java
- (em inglês) - Jasmin
- (em inglês) - Linguagem Groovy
- (em inglês) - Compilador SmartEiffel
- - JEiffel
- (em inglês) - Compilador BASIC
bs:Java bytecode en:Java bytecode es:Java bytecode fr:Bytecode Java