¿Cuáles son los componentes de la arquitectura Java?



Java Architecture combina el proceso de compilación e interpretación. En este artículo, le hablaré sobre los diversos componentes de la arquitectura Java.

Java Architecture combina el proceso de compilación e interpretación. Explica los diversos procesos involucrados al formular un . Antes de comenzar con el tema, permítanme presentarles la agenda de este artículo.

Los consejos que se mencionan a continuación serán nuestros temas de discusión:





Comencemos por comprender qué es exactamente la Arquitectura Java.



¿Qué es la arquitectura Java?

Aquí te explicaré la arquitectura java en sencillos pasos.

  • En Java, hay un proceso de compilación e interpretación.
  • El código escrito en , se convierte en códigos de bytes que realiza el compilador de Java.
  • Luego, la JVM convierte los códigos de bytes en código de máquina.
  • El código de máquina es ejecutado directamente por la máquina.

Este diagrama ilustra el funcionamiento interno de un código Java, o precisamente, ¡Arquitectura Java!



explicar la arquitectura mvc en java con un ejemplo

JVM - Arquitectura Java - EdurekaAhora, profundicemos un poco más en la arquitectura java y hablemos de varios .

Componentes de la arquitectura Java

Hay tres componentes principales del lenguaje Java: JVM, JRE y JDK .

Java Virtual Machine, Java Runtime Environment y Java Development Kit respectivamente.

Permítanme detallar cada uno de ellos uno a uno:

Máquina virtual de Java:

¿Has oído hablar de WORA? (Escribe una vez, corre a cualquier lugar). Bueno, las aplicaciones Java se llaman WORA debido a su capacidad para ejecutar un código en cualquier plataforma. Esto se hace solo gracias a JVM. La JVM es un componente de la plataforma Java que proporciona un entorno para ejecutar programas Java. JVM interpreta el código de bytes en código de máquina que se ejecuta en la máquina en la que se ejecuta el programa Java.

Entonces, en pocas palabras, JVM realiza las siguientes funciones:

  • Carga el código
  • Verifica el código
  • Ejecuta el código
  • Proporciona un entorno de ejecución

Ahora, déjame mostrarte la arquitectura JVM. ¡Aquí va!

Explicación:

Cargador de clases : El cargador de clases es un subsistema de JVM. Se utiliza para cargar archivos de clases. Siempre que ejecutamos el programa java, el cargador de clases lo carga primero.

Área de método de clase : Es una de las áreas de datos en JVM, en la que se almacenarán los datos de la clase. En esta área se almacenan variables estáticas, bloques estáticos, métodos estáticos y métodos de instancia.

Montón : Se crea un montón cuando se inicia la JVM. Puede aumentar o disminuir de tamaño mientras se ejecuta la aplicación.

Apilar : La pila JVM se conoce como pila de subprocesos. Es un área de datos en la memoria JVM que se crea para un único hilo de ejecución. La pila JVM de un hilo es utilizada por el hilo para almacenar varios elementos, es decir, variables locales, resultados parciales y datos para llamar al método y los retornos.

Pila nativa : Incluye todos los métodos nativos utilizados en su aplicación.

Motor de ejecución:

  • Compilador Jit
  • Recolector de basura

Compilador JIT: los Compilador Just-In-Time (JIT) es parte del entorno de ejecución. Ayuda a mejorar el rendimiento de las aplicaciones Java compilando códigos de bytes en código de máquina en tiempo de ejecución. El compilador JIT está habilitado de forma predeterminada. Cuando se compila un método, la JVM llama directamente al código compilado de ese método. El compilador JIT compila el código de bytes de ese método en código de máquina, compilándolo 'justo a tiempo' para ejecutarse.

Recolector de basura: Como el nombre lo explica Recolector de basura medios para recoger el material no utilizado. Bueno, en JVM este trabajo lo realiza la recolección de basura. Realiza un seguimiento de todos y cada uno de los objetos disponibles en el espacio de almacenamiento dinámico de JVM y elimina los no deseados.
El recolector de basura funciona en dos simples pasos conocidos como marcar y barrer:

  • Marca: es donde el recolector de basura identifica qué pieza de memoria está en uso y cuál no.
  • Barrido: elimina los objetos identificados durante la fase de 'marca'.

Entorno de ejecución de Java:

El software JRE crea un entorno de ejecución en el que se pueden ejecutar programas Java. El JRE es el sistema en disco que toma su código Java, lo combina con las bibliotecas necesarias e inicia la JVM para ejecutarlo. El JRE contiene las bibliotecas y el software que necesitan sus programas Java para ejecutarse. JRE es parte de JDK (que estudiaremos más adelante) pero se puede descargar por separado.

Kit de desarrollo de Java:

El Java Development Kit (JDK) es un entorno de desarrollo de software que se utiliza para desarrollar aplicaciones y subprogramas Java. Contiene JRE y varias herramientas de desarrollo, un intérprete / cargador (java), un compilador (javac), un archivador (jar), un generador de documentación (javadoc) acompañado de otra herramienta.

El área azul que se muestra en el diagrama es JDK. Ahora, permítanme explicarles las herramientas de desarrollo a todos.

Java : es el lanzador de todas las aplicaciones java.
javac : compilador de los lenguajes de programación java.
javadoc : es el generador de documentación de API.
tarro : crea y administra todos los archivos JAR.

Siguiendo adelante con la arquitectura Java, entendamos cómo la plataforma Java es independiente.

¿Cómo es la plataforma Java independiente?

¿Cuándo se denomina un lenguaje de programación como independiente de la plataforma? Bueno, si y solo si puede ejecutarse en todos los sistemas operativos disponibles con respecto a su desarrollo y compilación.
Ahora, Java es independiente de la plataforma solo por el código de bytes. Déjame decirte qué es exactamente un código de bytes. En lenguaje sencillo,
Bytecode es un código de la JVM que es comprensible por máquina.
La ejecución de código de bytes en Java demuestra que es un lenguaje independiente de la plataforma.
Aquí, le mostraré los pasos involucrados en el proceso de ejecución del código de bytes de Java.

A continuación se muestra la explicación de los pasos involucrados:

sample.java → javac (sample. class) → JVM (sample.obj) → salida final

El compilador Java utiliza el primer código fuente y lo convierte en un archivo .class. El código del archivo de clase está en formato de código de bytes y JVM utiliza ese archivo de clase para convertirlo en un archivo de objeto. Después de eso, puede ver el resultado final en su pantalla.

Avanzando en el artículo de arquitectura Java, comprendamos el concepto de JIT en Java .

JIT en Java

El compilador Just In Time comúnmente conocido como JIT, es básicamente responsable de la optimización del rendimiento de las aplicaciones basadas en Java en tiempo de ejecución. El rendimiento de una aplicación depende de un compilador.
Aquí hay un diagrama simple que muestra el proceso interno en curso.

Compilador JIT - Arquitectura Java - Edureka

El compilador JIT compila el código de bytes del método en código de máquina, compilándolo 'Just In Time' para su ejecución. Cuando se compila un método, la JVM llama directamente al código compilado de ese método.
Profundicemos más:
El código de bytes debe interpretarse o compilarse con las instrucciones adecuadas de la máquina, según el conjunto de instrucciones proporcionado. Además, estos se pueden ejecutar directamente si la arquitectura de instrucciones está basada en código de bytes. La interpretación del código de bytes afecta la velocidad de ejecución.
Para mejorar el rendimiento, los compiladores JIT interactúan con la máquina virtual Java (JVM) en tiempo de ejecución y compilan secuencias de código de bytes adecuadas en código de máquina nativo (como se muestra en el diagrama). Al usar un compilador JIT, el hardware puede ejecutar el código nativo, en comparación con tener la JVM interpretando la misma secuencia de código de bytes repetidamente y incurriendo en gastos generales para el proceso de traducción.

Con esto, he llegado al final de este artículo sobre Arquitectura Java. Espero que los temas discutidos anteriormente agreguen valor a su conocimiento de Java. ¡Estén atentos para más artículos!

Ahora que ha entendido los conceptos básicos de Java, consulte la por Edureka, una empresa de aprendizaje en línea de confianza con una red de más de 250.000 alumnos satisfechos repartidos por todo el mundo. El curso de certificación y capacitación Java J2EE y SOA de Edureka está diseñado para estudiantes y profesionales que desean ser desarrolladores de Java. El curso está diseñado para darle una ventaja en la programación de Java y capacitarlo para los conceptos básicos y avanzados de Java junto con varios marcos de Java como Hibernate y Spring.

Tienes una pregunta para nosotros? Menciónelo en la sección de comentarios de este blog 'Arquitectura Java y sus componentes' y nos comunicaremos con usted lo antes posible.