Inhaltsverzeichnis:
- Definition - Was bedeutet Native Code Compiler für Java (NCCJ)?
- Techopedia erklärt Native Code Compiler für Java (NCCJ)
Definition - Was bedeutet Native Code Compiler für Java (NCCJ)?
Native Code Compiler für Java (NCCJ) ist eine Compiler-Anwendung, die Java-Code in einen nativen Code konvertiert, der ohne Interpreter ausgeführt werden kann. Der native Code-Compiler für Java übersetzt den Java-Code in eine Binärdarstellung, die mit vorkompilierten Bibliotheksdateien und -ressourcen verknüpft werden kann, um ein ausführbares Programm zu erstellen.
Durch native Code-Compiler müssen JVM und Interpreter den Java-Bytecode, einen portablen Zwischencode, nicht mehr konvertieren. Indem sie dabei helfen, Java-Code direkt in Maschinencode umzuwandeln, tragen native Code-Compiler dazu bei, Redundanz zu reduzieren, das Engineering rückgängig zu machen und die Programmausführung zu optimieren.
Techopedia erklärt Native Code Compiler für Java (NCCJ)
Java-Code wird normalerweise in einen Zwischenbyte-Code umgewandelt, der dann mit Hilfe von JVM auf jedem Computer, auf dem das Programm ausgeführt werden soll, in einen maschinenabhängigen Code kompiliert wird. Diese besondere Funktion von Java macht Java-Programme flexibler und portabler für eine Vielzahl von Geräten. Dies ist jedoch mit einem Mehraufwand verbunden und kann dazu führen, dass Java-Programme mehr Zeit in Anspruch nehmen als nativ kompilierter Code. Da Java das Hauptanliegen des Java-Designs war, es zu einem plattformunabhängigen und sicheren Entwicklungsmodell zu machen, wurde die Ausführungsleistungsverzögerung aufgrund der Bytecode-Funktion außer Kraft gesetzt.
Wenn Entwickler jedoch die Ausführungsleistung verbessern möchten, können sie die Java-Klassen oder bestimmte Teile des Codes nativ kompilieren. Dazu tragen native Code-Compiler für Java bei, die eine höhere Verarbeitungsgeschwindigkeit ermöglichen als die Bytecode-Interpretation.
Die Erhöhung der Geschwindigkeit kann auf verschiedene Faktoren zurückzuführen sein:
- Verwendung von Zahlen
- Grad der polymorphen Botschaft
- Direkter Feldzugriff
- Anzahl der Array-Zugriffe
- Besetzungen
Die beiden Haupttypen nativer Code-Compiler sind Just-in-Time-Compiler (JIT-Compiler) und AOT-Compiler (AOT = Ahead-of-Time-Compiler). JIT-Compiler ermöglichen der JVM, Java-Code nach Bedarf vom JDK in Maschinencode zu übersetzen. AOT-Compiler kompilieren den Java-Code in einer JAR-Datei vor der Ausführungszeit in native gemeinsam genutzte Bibliotheken.
Nativer Kompilierungscode wird auch als statische Kompilierung bezeichnet und bietet eine konsistente Leistung.
