Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 18

“Año del Fortalecimiento de la Soberanía Nacional”

ACTIVIDAD:

Tarea de actividad académica

⮚ ASIGNATURA: Taller de programación

⮚ DOCENTE: Claudio Jesús Ibarra

⮚ ALUMNO:
Tacuri Gutierrez, Geovanna U20240020
López Hernández, Jefferson Jesús U20217212
Marcos Cajo, Piero Jesús U20233049

⮚ SECCIÓN: 10811
ICA – PERÚ

2022
ARQUITECTURA DEL JDK

1. ¿Qué es JAVA?

El sofware JAVA, siendo este un lenguaje de programación y una plataforma

informática comercializada por primera vez en 1995 por Sun Microsystems.

2. ¿Qué es el JDK?

El JDK “Java Development Kit”, es decir Kit de desarrollo de JAVA; se puede

definir como un conjunto de herramientas de desarrollo para la creación de

programa en JAVA

3. Componentes del JDK

a) Intérprete en tiempo de ejecución (JRE)

Permite la ejecución de los programas Java (*.class) no gráficos

(aplicaciones).

La sintaxis para su utilización es la siguiente:

java [Opciones] ClaseAEjecutar [Argumentos]

b) Compilador

Se utiliza para compilar archivos de código fuente Java (habitualmente

*.java), en archivos de clases Java ejecutables (*.class). Se crea un archivo

de clase para cada clase definida en un archivo fuente.

Este compilador es una utilidad en línea de comandos con la

siguiente sintaxis:

javac [Opciones] ArchivoACompilar

c) Visualizador de applets

Es una herramienta que sirve como campo de pruebas de applets,

visualizando cómo se mostrarían en un navegador, en lugar de tener que

esperar.

Al ser activado desde una línea de órdenes abre una ventana en la que
muestra el contenido de la applet.

Se activa con la sintaxis:

appletvie wer [Opciones] Applet

d) Depurador

Es una utilidad de línea de comandos que permite depurar aplicaciones Java.

No es un entorno de características visuales, pero permite encontrar y

eliminar los errores de los programas Java con mucha exactitud. Es parecido

en su funcionamiento al depurador gdb que se incluye con las distribuciones

del compilador gcc/g++ para C/C++.

Se activa con la sintaxis:

jdb [Opciones]

e) Desensamblador de archivo de clase

Se utiliza para desensamblar un archivo de clase. Su salida por defecto

muestra los atributos y métodos públicos de la clase desensamblada, pero

con la opción -c también desensambla los códigos de byte, mostrándolos por

pantalla. Es útil cuando no se tiene el código fuente de una clase de la que

se quisiera saber cómo fue codificada.

La sintaxis es la siguiente:

javap [Opciones] [NombresClases]

f) Generador de cabecera y archivo de apéndice

Se utiliza para generar archivos fuentes y cabeceras C para implementar

métodos Java en C (código nativo). Esto se consigue mediante la generación

de una estructura C cuya distribución coincide con la correspondiente clase

Java.
El generador de cabeceras Java, crea los ficheros de cabecera C/C++ para

implementar en esos lenguajes los métodos nativos que presente un

programa Java.

La sintaxis es la siguiente:

javah [Opciones] NombreClase

g) Generador de documentación

Es una herramienta útil para la generación de documentación API

directamente desde el código fuente Java. Genera páginas HTML basadas

en las declaraciones y comentarios javadoc, con el formato

/** comentarios */: La documentación que genera es del mismo

estilo que la documentación que se obtiene con el JDK. El JDK incluye una

serie de applets de demostración, con su código fuente al completo. Las

etiquetas, que se indican con una arroba (@), aparecerán resaltadas en la

documentación generada.

Su sintaxis es:

javadoc Opciones NombreArchivo

h) Applets de demostración.

El JDK incluye una serie de applets de demostración, con su código fuente

al completo. El código fuente de la API se instala de forma automática,

cuando se descomprime el JDK, aunque permanece en formato comprimido

en un archivo llamado "scr.zip" localizado en el directorio Java que se creó

durante la instalación.

4. Uso del JDK

Ya se han visto las diferentes partes de que está compuesto el JDK, pero para

el desarrollo de una aplicación final Java (ya sea una aplicación o una applet ),
deberemos utilizar las diferentes herramientas que nos proporciona el JDK en

un orden determinado. En el siguiente diagrama podemos ver la sucesión de

pasos para generar un programa final Java:


5. Jerarquía de paquetes de JAVA

a) Creación de paquetes

Un paquete Java se genera sencillamente incluyendo

la palabra clave package al inicio de los módulos de código

en los que se definen las clases que formarán parte del

mismo. Trabajando en un proyecto con NetBean,

comprobaremos que en la ventana Projects los paquetes se

representan con un icono específico y actúan como nodos

contenedores, alojando los módulos .java con el código

fuente. El menú contextual del proyecto nos ofrece la opción

New>Java Package, que será el que usemos

habitualmente para crear un nuevo paquete:

Nota: Cada vez que se crea un nuevo proyecto con NetBeans se

propone la definición de un nuevo paquete, cuyo nombre sería el mismo


del proyecto, donde se alojarían los módulos de código. En proyectos

complejos, no obstante, puede ser necesaria la creación de paquetes

adicionales.

Un paquete puede contener, además de definiciones de tipos como las

clases e interfaces, otros paquetes, dando lugar a estructuras

jerárquicas de contenedores.

El diagrama siguiente representa el contenido de un paquete llamado

campusmvp, teóricamente correspondiente a un proyecto de aplicación

de contabilidad. En ese paquete de primer nivel tenemos un subpaquete

con utilidades, llamado campusmvp.util, no directamente vinculadas

con la aplicación de contabilidad. El subpaquete

campusmvp.conta contendría todos los elementos asociados a dicha

aplicación, distribuidos a su vez en un tercer nivel de paquetes que

contienen las clases correspondientes al modelo, la vista, etc., siguiendo

al patrón arquitectónico MVC. Cada uno de los módulos de definición de

clase, denominados Cuenta.java, Movimiento.java, Vista.java, etc.,

comenzarían con una cláusula package indicando el nombre completo

del paquete al que pertenecen:


Nota: Todas las clases que pertenecen a un mismo paquete comparten un ámbito

común, al que pertenecerán aquellos miembros que no especifiquen explícitamente

otro tipo de visibilidad.


6. Importación de paquetes

Los paquetes Java son como cajas de herramientas, cada una de

ellas con una colección distinta de instrumentos útiles para nuestro

trabajo, a las que podemos necesitar acceder cada vez que

abordamos el desarrollo de un nuevo proyecto. Es en este contexto

donde recurriremos a la cláusula import, a fin de importar en el

ámbito actual las definiciones de otro paquete y poder usarlas

según el procedimiento habitual, creando objetos, accediendo a los

servicios de las clases, etc.

La cláusula import puede utilizarse para importar un elemento

concreto de un paquete, facilitando el nombre de este seguido de

un punto y el identificador de dicho elemento. Por ejemplo, para

importar la clase Math del paquete java.lang, pudiendo así acceder

a la constante PI y las funciones matemáticas que aporta, bastaría

con la siguiente línea:

✓ import java.lang.Math;

Es habitual que al importar un paquete nos interesen muchas

de las clases definidas en el mismo. En este caso podríamos

importarlas individualmente, usando la sintaxis anterior, o bien

podríamos recurrir a la siguiente alternativa. Esto nos

permitiría usar la clase Math, así como la clase System, la

clase Thread y muchas otras definidas en el paquete

java.lang:

✓ import java.lang.*;

En ocasiones, como ocurre con la clase Math, importamos

una clase para acceder directamente a sus miembros

estáticos, constantes y métodos, no para crear objetos a

partir de ellas, lo que nos fuerza a utilizar constantemente


la sintaxis Clase.miembro, por ejemplo Math.PI o

Math.sin(). Si tras importar la clase Math intentamos

referirnos a estos miembros simplemente por su nombre,

como se hace en la mitad superior de la siguiente imagen,

obtendremos un error. En estos casos podemos

recurrir a la sintaxis import static paquete.clase.*, cuya

finalidad es incluir en el ámbito actual los miembros

estáticos de la clase indicada. Es lo que se hace en la mitad

inferior de la siguiente imagen:


Ejemplo de import en Java

Vamos a suponer que al interior de nuestro proyecto hemos creado

cuatro clases diferentes en paquetes diferentes, cada clase se llamará

"Clase_1", "Clase_2", "Clase_3" y "Clase_4" respectivamente.

La clase número uno fue declarada en un el paquete "mis_clases.

clases_publicas.clase_1" por lo tanto quedará al interior de una carpeta

llamada "clase_1" la cual estará al interior de otra carpeta llamada

"clases_publicas" y esta a su vez estará dentro de la carpeta llamada

"mis_clases". La clase número dos se le declaró el paquete

"mis_clases.clase_2" por lo tanto ha quedado al interior de una carpeta

llamada "clase_2" la cual a su vez está al interior de la carpeta

"mis_clases". A la clase número tres se le impuso el paquete

"mis_clases", esto indica que esta estará al interior de la carpeta

"mis_clases". Por último, la clase número cuatro no tiene declarado

ningún paquete por lo tanto el paquete asignado será el paquete por

defecto, en otras palabras, esta clase se mantendrá siempre en la

carpeta raíz del proyecto (en netbeans y eclipse la carpeta raíz se llama

src).
7. LOS JARS

Los ficheros Jar (Java ARchives) permiten recopilar en un sólo fichero varios

ficheros diferentes, almacenándolos en un formato comprimido para que ocupen

menos espacio. Es por tanto, algo similar a un fichero .zip (de hecho están

basados en ficheros .zip).

Por ejemplo, si hemos recopilado todos los ficheros necesarios para ejecutar una

aplicación en un fichero "aplic.jar", podemos lanzar la aplicación desde una

terminal de texto mediante:

java -jar aplic.jar

a) Como distribuir una aplicación

a) Con solo un fichero

La máquina virtual de java es capaz de ejecutar el código

fuente de nuestro programa, también

conocido como java byte-code. Esta aplicación está formada

por un solo fichero y si quisiéramos distribuirla sólo

tendríamos que compilar el fichero obtener el “.class” y

distribuir ese fichero.

Java en su JDK nos ofrece un compilador que podemos usar

en la consola, compilaríamos nuestro fichero java y si no tiene

ningún tipo de error se genera el java “byte-code”, el cual

podríamos distribuir y cualquier persona que tuviese la

máquina virtual de java podría ejecutar el fichero con el

comando java y el nombre del fichero”.class”.

b) Con muchos ficheros

Si una aplicación está formada por más de un fichero que es

lo normal que dividamos nuestro código en múltiples clases,

por ende tendríamos que entregar todos los “.class” y además

si es que lo estructuramos en paquetes tendríamos que


entregar las carpetas que conforman esos paquetes, teniendo

que indicar cuál sería el fichero que contiene el “main”,

además de ejecutarse de una manera tediosa, si hay

cualquier cambio en las carpetas o se nos olvida alguna,

además de que no es una manera eficiente para solventar

este problema. Para evitar todos esos errores existen los

ficheros de tipo “.jar”.

b) Funcionalidad

Se puede utilizar los ficheros “,jar” como herramienta de

archivado general y también para distribuir programas Java de

todos los tipos, incluidos los applets. Los applets Java se

descargan en un navegador en solo HTTP, en lugar de hacerlo

abriendo una conexión nueva para cada componente.

El fichero “.jar” reduce el tamaño del archivo y disminuye el

tiempo de bajada al descargar. Además, el autor de un applet

puede firmar digitalmente las entradas individuales de un

archivo JAR para autenticar su origen.

c) Creación del JAR y ejecución de un JAR

a) PASOS PARA CREAR UN JAR USANDO LA CONSOLA

1. Nos situamos en la raíz donde estén todos los ficheros “.class”.

2. Creamos el directorio META-INF y el fichero MANIFEST.MF

3. Creamos el jar mediante este comando

4. jar cfm fichero.jar META-INF/MANIFEST.MF *.class

5. Podemos comprobar que el contenido del fichero es adecuado

escribiendo

6. jar tf fichero.jar
b) PASOS PARA CREAR UN JAR USANDO NETBEANS

1. Ubicar el icono de Clean and Build Proyect

2. Dar clic izquierdo al icono

3. Verificar si todo salió bien.


4. Buscar en “.jar” en el proyecto.

5. Abrir la ubicación de archivo

6. Tenemos nuestro “.jar”

c) COMO EJECUTAR UN “.jar”

Si la biblioteca Java contiene archivos ejecutables o es,

en sí misma, un archivo ejecutable,

necesitarás un programa especial para abrirla. El más

común es Java Runtime Environment (JRE. Una vez


instalado el programa, el archivo .jar puede ejecutarse

mediante un doble clic. El JRE es un entorno en tiempo de

ejecución que permite ejecutar archivos mediante una

máquina virtual –la Java Virtual Machine (JVM) – sea cual

sea el sistema operativo.

d) COMO EJECUTAR UN “.jar” USANDO LA CONSOLA

1. Abrimos la consola en la ubicación del archivo

2. Ubicar el archivo con el comando “dir”.

3. Ejecutar el comando “java -jar fichero.jar”


8. BENEFICIOS DE USAR EL FICHERO JAR

a) Seguridad:

Puedes firmar digitalmente el contenido de un fichero JAR. Los usuarios

que reconozcan tu

firma pueden permitir a tu software privilegios de seguridad que de otro modo

no tendría.

b) Disminuir el tiempo de descarga:

Si tus applets están empaquetados en un fichero JAR, los ficheros de clases y

los recursos asociados pueden ser descargados por el navegador en una sola

transacción HTTP sin necesidad de abrir una nueva conexión para cada fichero.

c) Compresión:

El formato JAR permite comprimir tus ficheros para ahorrar

espacio.

d) Portabilidad:

El mecanismo para manejar los ficheros JAR son una parte

estándar del corazón del API de la plataforma Java.

9. CONCLUSIONES

Podemos concluir que este trabajo nos ha ayudado a comprender

las bases, el funcionamiento y organización de proyectos en Java,

desde el funcionamiento del JDK y todos los elementos que este

ofrece pasando por la organización de paquetes y la modularización

del Java. Finalizando con la exportación de un proyecto formato

“.jar”.

El jdk es la herramienta para desarrollar sofwares en Java o en

cualquier otro tipo de lenguaje.

El fichero .jar es la exportacion de el programa, con las

dependencias y archivos adicionales que se necesitan para poder


ejecutarse, eso se hace dado la complejidad que seria distribuir un

programa dividido en diferentes paquetes con todoas las clases que

compondrian este. Es importante conocer el funcionamiento del

fichero .jar para poder planear de antemado las estrategias usada

para la distribucion del proyecto.

10. REFERENCIAS BIBLIOGRÁFICAS

EL JDK (Java Development Kit)


https://www.usmp.edu.pe/publicaciones/boletin/fia/info49/too.html
JDK https://www.ecured.cu/JDK#Componentes_del_JDK
ProgramarYa https://www.programarya.com/Cursos/Java/Librerias
Paquetes en Java
https://www.campusmvp.es/recursos/post/paquetes-en-java-que-son-para-que-
se-utilizan-y-como-se- usan.aspx

Archivos.jar: Cómo abrirlos y ejecutarlos


https://www.ionos.es/digitalguide/servidores/know-how/archivos-jar/

JAR File Specification


https://docs.oracle.com/en/java/javase/16/docs/specs/jar/jar.html

Archivos JAR y de https://www.ibm.com/docs/es/i/7.4?topic=platform-java-jar-


class-files
Archivos JAR y de clase JAVA
http://gpd.sip.ucm.es/rafa/docencia/programacion/tema1/jar.html

También podría gustarte