Herramientas de usuario

Herramientas del sitio


bloque1:introjava

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
bloque1:introjava [12/03/2018 11:49] – [Java como plataforma de ejecución] Fernando Valdeónbloque1:introjava [16/09/2024 20:53] (actual) – editor externo 127.0.0.1
Línea 31: Línea 31:
  
 ===== Java como plataforma de ejecución ===== ===== Java como plataforma de ejecución =====
-  * Java es independiente de la máquina gracias a su JVM. +  * Java es independiente de la máquina real gracias a su JVM (Java Virtual Machine)
-    *  Es compilado en un código objeto de una máquina con arquitectura independiente: La máquina virtual de Java (JVM). Este código se ejecutará en cualquier máquina real, que contenga una JVM.+    *  El código Java es compilado en un código objeto de una máquina con arquitectura independiente: La máquina virtual de Java (JVM). Este código se ejecutará en cualquier máquina real, que contenga una JVM.
     *  En los lenguajes compilados el código se traduce al código máquina de ese ordenador concreto. No es portable.     *  En los lenguajes compilados el código se traduce al código máquina de ese ordenador concreto. No es portable.
  
Línea 39: Línea 39:
  
   * La máquina virtual de Java es la encargada de ejecutar todo ese código compilado.   * La máquina virtual de Java es la encargada de ejecutar todo ese código compilado.
-    * Al final todo lenguaje se debe traducir a código máquina, ya que es lo único que entiende mi ordenador.+    * Al finaltodo lenguaje se debe traducir a código máquina, ya que es lo único que entiende el ordenador.
     * La diferencia es que ese código máquina es generado por la máquina virtual de java.     * La diferencia es que ese código máquina es generado por la máquina virtual de java.
     * La máquina virtual de java recibe por su parte el código compilado de java.     * La máquina virtual de java recibe por su parte el código compilado de java.
Línea 47: Línea 47:
 ===== Máquina virtual de Java ===== ===== Máquina virtual de Java =====
   * El lenguaje de programación Java está completamente ligado a su plataforma de ejecución. No puede funcionar uno sin el otro.   * El lenguaje de programación Java está completamente ligado a su plataforma de ejecución. No puede funcionar uno sin el otro.
 +
   * El lenguaje en lugar de poder ejecutarse directamente y dar instrucciones al hardware, necesita antes ser traducido.   * El lenguaje en lugar de poder ejecutarse directamente y dar instrucciones al hardware, necesita antes ser traducido.
 +
   * Esto hace que sea un poco más lento que otros lenguajes puramente compilados, como C, o C++.   * Esto hace que sea un poco más lento que otros lenguajes puramente compilados, como C, o C++.
   * Primero se compila el código fuente de Java (texto) en un archivo y se genera un código intermedio en otro archivo (bytecode de Java).    * Primero se compila el código fuente de Java (texto) en un archivo y se genera un código intermedio en otro archivo (bytecode de Java). 
 +
   * Este código intermedio resultado de la compilación, puede ser ejecutable por la JVM en cualquier equipo.   * Este código intermedio resultado de la compilación, puede ser ejecutable por la JVM en cualquier equipo.
 +
   * La máquina virtual de Java (JVM, Java Virtual Machine) está disponible para cualquier plataforma, a través del paquete JRE (Java Runtime Environment)   * La máquina virtual de Java (JVM, Java Virtual Machine) está disponible para cualquier plataforma, a través del paquete JRE (Java Runtime Environment)
  
Línea 63: Línea 67:
  
   * Es el paquete que permite ejecutar aplicaciones creadas en Java en mi ordenador.   * Es el paquete que permite ejecutar aplicaciones creadas en Java en mi ordenador.
 +
   * Está compuesta de la //máquina virtual de Java//, bibliotecas de Java y todo lo necesario para ejecutar aplicaciones.   * Está compuesta de la //máquina virtual de Java//, bibliotecas de Java y todo lo necesario para ejecutar aplicaciones.
 +
   * Las bibliotecas (API de Java) y la máquina virtual (JVM) deben comprenderse entre si.   * Las bibliotecas (API de Java) y la máquina virtual (JVM) deben comprenderse entre si.
 +
   * Las bibliotecas ofrecen todas las instrucciones que se pueden ejecutar en código java, y van cambiando con cada versión de Java.   * Las bibliotecas ofrecen todas las instrucciones que se pueden ejecutar en código java, y van cambiando con cada versión de Java.
 +
   * Es necesario que la JVM entienda todas las instrucciones de la API de Java, por eso tanto API como JVM, se entregan conjuntas.   * Es necesario que la JVM entienda todas las instrucciones de la API de Java, por eso tanto API como JVM, se entregan conjuntas.
 ==== Java Development Kit (JDK)==== ==== Java Development Kit (JDK)====
   * Contiene el **JRE**, para poder ejecutar las aplicaciones creadas.   * Contiene el **JRE**, para poder ejecutar las aplicaciones creadas.
 +
   * Es necesario en caso de que queramos desarrollar aplicaciones en Java.   * Es necesario en caso de que queramos desarrollar aplicaciones en Java.
 +
   * Algunos IDE's contienen herramientas similares, y se podría crear un programa sin tener el JDK.   * Algunos IDE's contienen herramientas similares, y se podría crear un programa sin tener el JDK.
 +
   * Nos ofrece distintas herramientas para poder compilar, crear ejecutables, crear librerías, crear documentación, etc.   * Nos ofrece distintas herramientas para poder compilar, crear ejecutables, crear librerías, crear documentación, etc.
 +
  
 ==== Diferencias ==== ==== Diferencias ====
Línea 92: Línea 104:
   * Java ME (Micro Edition)   * Java ME (Micro Edition)
     * Librerías enfocadas en entornos de recursos limitados: Móviesl, PDA, Tablets, etc.     * Librerías enfocadas en entornos de recursos limitados: Móviesl, PDA, Tablets, etc.
 +
   * Java SE (Standard Edition)   * Java SE (Standard Edition)
     * Librerías enfocadas en entornos de gama media: ordenadores, principalmente.     * Librerías enfocadas en entornos de gama media: ordenadores, principalmente.
 +
   * Java EE (Enterprise Edition)   * Java EE (Enterprise Edition)
     * Librerías enfocadas en entornos distribuidos empresariales o de internet.     * Librerías enfocadas en entornos distribuidos empresariales o de internet.
Línea 113: Línea 127:
 ===== Eclipse IDE ===== ===== Eclipse IDE =====
   * Es un Entorno de Desarrollo Integrado (IDE) multiplataforma.   * Es un Entorno de Desarrollo Integrado (IDE) multiplataforma.
 +
   * Está creado en el lenguaje Java, por lo que necesitamos la plataforma Java para usarlo.   * Está creado en el lenguaje Java, por lo que necesitamos la plataforma Java para usarlo.
 +
   * Es un programa de código abierto.   * Es un programa de código abierto.
 +
   * Incorpora algunas herramientas de desarrollo, como un compilador, por lo que no necesitamos el JDK para poder crear y ejecutar un programa escrito en Java.   * Incorpora algunas herramientas de desarrollo, como un compilador, por lo que no necesitamos el JDK para poder crear y ejecutar un programa escrito en Java.
 +
   * Otras de sus funcionalidades si requieres en JDK (Kit de desarrollo Java).   * Otras de sus funcionalidades si requieres en JDK (Kit de desarrollo Java).
 +
 {{ :bloque1:eclipse-interface.png?500 |}} {{ :bloque1:eclipse-interface.png?500 |}}
  
Línea 122: Línea 141:
 {{ :bloque1:eclipse-photon-logo.png?300|}} {{ :bloque1:eclipse-photon-logo.png?300|}}
 ^Nombre ^ Fecha Lanzamiento ^ Versión^ ^Nombre ^ Fecha Lanzamiento ^ Versión^
 +|Photon|27 de junio de 2018|4.8|
 |Oxigen|28 de junio de 2017|4.7| |Oxigen|28 de junio de 2017|4.7|
 |Neon|22 de junio de 2016|4.6| |Neon|22 de junio de 2016|4.6|
Línea 142: Línea 162:
   * El instalador nos ofrecerá la la selección de la distribución de Eclipse que queramos atendiendo al entorno en el que nos enfocaremos, incluyendo unas herramientas u otras.   * El instalador nos ofrecerá la la selección de la distribución de Eclipse que queramos atendiendo al entorno en el que nos enfocaremos, incluyendo unas herramientas u otras.
  
-  * El paquete se descargará directamente con distribución de eclipse que queramos emplear atendiendo a nuestro enfoque. +  * El paquete de ejecución se descargará directamente con la distribución de eclipse que queramos emplearatendiendo a nuestro enfoque. 
-Se recomienda descomprimirlo en una ruta sin espacios en blanco, por ejemplo //C://.+Se recomienda descomprimirlo o instalarlo en una ruta sin espacios en blanco, por ejemplo //C://.
  
 Cada vez que lo arranquemos nos puede preguntar qué //workspace// queremos utilizar. El worspace es el directorio donde guardará los proyectos creados. Conviene que esta ruta tampoco tenga espacios. Cada vez que lo arranquemos nos puede preguntar qué //workspace// queremos utilizar. El worspace es el directorio donde guardará los proyectos creados. Conviene que esta ruta tampoco tenga espacios.
 ===== Creación de programas en Java ===== ===== Creación de programas en Java =====
-El proceso de obtención de un programa en java a partir de un código fuente de Java, consta de 2 fases: la compilación y la ejecución. En la compilación se obtiene otro código llamado bytecode de Java. Este código es comprendido por cualquier JVM de Java instalada en cualquier dispositivo.+El proceso de obtención de un programa en java a partir de un código fuente de Java, consta de 2 fases: la compilación y la ejecución. En la compilación se obtiene otro código llamado //bytecode// de Java. Este código es comprendido por cualquier JVM de Java instalada en cualquier dispositivo.
  
-La ejecución conlleva un proceso de //interpretación// del bytecode en tiempo real.+La ejecución conlleva un proceso de //interpretación// de este bytecode (fichero .class) en tiempo real.
  
-Se puede concluir que java es un lengauje compilado interpretado.+Se puede concluir que java es un lenguaje __compilado interpretado__.
 {{ :bloque1:compilacionejecucion.jpg?500 |}} {{ :bloque1:compilacionejecucion.jpg?500 |}}
  
 ==== Editor ==== ==== Editor ====
   * Es la herramienta con la que escribimos el lenguaje o código. Existe una sintaxis concreta para cada lenguaje, aunque pueden ser parecidas.   * Es la herramienta con la que escribimos el lenguaje o código. Existe una sintaxis concreta para cada lenguaje, aunque pueden ser parecidas.
-  * Genera ficheros únicamente con texto. Esto se conoce como fichero de texto //plano//: no contiene formatos de texto.+ 
 +  * Genera ficheros únicamente con texto. Esto se conoce como fichero de texto //plano//: no contiene formatos de texto. En el caso de los ficheros de texto con código, se le denomina ficheros fuente o código fuente 
   * A cada fichero de texto debemos asignarle extensión .java.   * A cada fichero de texto debemos asignarle extensión .java.
 +
   * Cada IDE tiene su propio editor, pero podemos usar el que queramos (p.e. notepad).   * Cada IDE tiene su propio editor, pero podemos usar el que queramos (p.e. notepad).
  
 ==== Compilador ==== ==== Compilador ====
   * Se encarga de leer el código que hemos escrito en un archivo y convertirlo en un formato que podrá ser leido por la máquina.   * Se encarga de leer el código que hemos escrito en un archivo y convertirlo en un formato que podrá ser leido por la máquina.
 +
   * La máquina es el ordenador en el que lo ejecutamos, pero como hemos comentado, la plataforma Java tiene un particularidad.   * La máquina es el ordenador en el que lo ejecutamos, pero como hemos comentado, la plataforma Java tiene un particularidad.
 +
   * Java usa un programa llamado Máquina Virtual de Java.   * Java usa un programa llamado Máquina Virtual de Java.
 +
   * La JVM simula un ordenador que entiende ese código y el capaz de ejecutarlo en nuestro ordenador real.   * La JVM simula un ordenador que entiende ese código y el capaz de ejecutarlo en nuestro ordenador real.
 +
   * Instalando una JVM en cualquier máquina nos aseguramos que el código compilado es comprendido (multiplataforma).   * Instalando una JVM en cualquier máquina nos aseguramos que el código compilado es comprendido (multiplataforma).
  
 ==== Interprete ==== ==== Interprete ====
-  * Al compilar el código, creamos un nuevo archivo con el mismo nombre, pero con extensión .class+  * Al compilar el código, creamos un nuevo archivo con el mismo nombre, pero con extensión ''.class'' 
   * Este fichero contiene un código denominado bytecode de java.   * Este fichero contiene un código denominado bytecode de java.
 +
   * Dicho código es **interpretado** por la máquina virtual de Java instalada en cualquier equipo.   * Dicho código es **interpretado** por la máquina virtual de Java instalada en cualquier equipo.
 +
   * La JVM es la encargada de traducir (interpretar) dicho código en algo capaz de ser ejecutado por el ordenador (código máquina).   * La JVM es la encargada de traducir (interpretar) dicho código en algo capaz de ser ejecutado por el ordenador (código máquina).
  
bloque1/introjava.1520855386.txt.gz · Última modificación: 16/09/2024 20:53 (editor externo)