Оглавление:
- Определение - Что означает компилятор Native Code для Java (NCCJ)?
- Techopedia объясняет компилятор нативного кода для Java (NCCJ)
Определение - Что означает компилятор Native Code для Java (NCCJ)?
Компилятор нативного кода для Java (NCCJ) - это приложение компилятора, которое преобразует код Java в нативный код, который может быть выполнен без использования интерпретаторов. Компилятор собственного кода для Java преобразует код Java в двоичное представление, которое можно связать с предварительно скомпилированными библиотечными файлами и ресурсами для создания исполняемой программы.
Компиляторы собственного кода устраняют необходимость в JVM и интерпретаторах для преобразования байтового кода Java, который является переносимым промежуточным кодом. Помогая преобразовать код Java непосредственно в машинный код, компиляторы собственного кода помогают уменьшить избыточность, выполнить обратный инжиниринг и оптимизировать выполнение программы.
Techopedia объясняет компилятор нативного кода для Java (NCCJ)
Java-код обычно преобразуется в промежуточный байт-код, который затем компилируется в машинно-зависимый код с помощью JVM, работающей на каждом компьютере, где должна выполняться программа. Эта особенность Java делает Java-программы более гибкими и переносимыми на широкий спектр устройств. Но это приводит к накладным расходам и может привести к тому, что Java-программы отнимают больше времени, чем встроенный код. Поскольку основной задачей проектирования Java было сделать ее независимой от платформы и безопасной моделью разработки, отставание в производительности выполнения из-за функции байт-кода было отложено.
Но когда разработчики хотят улучшить производительность выполнения, они могут выбрать собственную компиляцию классов Java или определенных частей кода. Компиляторы собственного кода для Java помогают достичь этого и, таким образом, помогают достичь лучшей скорости обработки, чем интерпретация байтового кода.
Увеличение скорости может произойти из-за нескольких факторов, таких как:
- Использование чисел
- Степень полиморфного сообщения
- Прямой доступ к полю
- Количество доступа к массиву
- Слепки
Два основных типа компиляторов нативного кода - это компиляторы JIT и компиляторы с опережением времени (AOT). JIT-компиляторы позволяют JVM транслировать код Java в машинный код по мере необходимости в JDK. Компиляторы AOT компилируют код Java в файле JAR в собственные разделяемые библиотеки до времени выполнения.
Собственный код компиляции также известен как статическая компиляция и обеспечивает стабильную производительность.
