Tarea Académica 1 - TA1 PDF

Title Tarea Académica 1 - TA1
Author Diego Frias
Course Taller de programacion
Institution Universidad Tecnológica del Perú
Pages 16
File Size 791 KB
File Type PDF
Total Downloads 183
Total Views 263

Summary

Download Tarea Académica 1 - TA1 PDF


Description

Curso: Taller de Programación

Profesor: Omar Antonio Sánchez Guevara

GRUPO 2 

Dias Frías, Diego Angelo

Cod. U20222611



Espejo Castillo, María de los Angeles

Cod. U20307213



Millones Palomino, Rodrigo David

Cod. U19314461



Rivera Leonardo, Kevin Fabian

Cod. U19311220



Sanchez Suyon, Manuel Eduardo

Cod. U20303242



Veliz Tello, Diego Rafael

Cod. U20224608

Septiembre,2021 Chiclayo-Perú

INDICE

1. INTRODUCCIÓN: ¿Qué es JAVA?......................................................................................3 1.2 ¿Qué es el JDK? Componentes...................................................................................3 1.3 Uso del JDK……………………………………………………………………………….…………..……………….5 2. Jerarquía de paquetes de JAVA……………………………………………….……………………..…………….6 2.1 Creación

de

paquetes.................................................................................................6 2.2 Importación

de

paquetes

………………………………………………………………….………….

……….8 3. JARS……………………………………………………………………………………………………………………………10 3.1 Creación del JAR y ejecución de un JAR………………….……………...….………………….……… 11 3.2 Beneficios de usar el fichero JAR………………………………...………………………………..…….14 4. Conclusiones y Recomendaciones………………………………………………………………………………15 5. Referencias

bibliográficas

…………………………………………………….16

(Enlaces

web

consultas)

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 

Intérprete en tiempo de ejecución (JRE) Permite le ejecución de los programas Java (*.class) no gráficos (aplicaciones). La sintaxis para su utilización es la siguiente: java [Opciones] ClaseAEjecutar [Argumentos]



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 

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: appletviewer [Opciones] Applet 

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]



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]



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 

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 

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:

Jerarquía de paquetes de JAVA 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.

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).

LOS JARS 1. Como distribuir una aplicación  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”.  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”.

2. ¿Qué es JAR? El fichero “.jar” es una abreviatura de “Java Archive” y suele contener varios archivos Java y metadatos que se envían de manera sintetizada y comprimida. Además de archivos “.jar”, esta extensión puede contener también imágenes, archivos de audio u otros formatos y funciona de manera similar a un archivo “.zip”. 3. 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.

4. Creación del JAR y ejecución de un JAR  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 jar cfm fichero.jar META-INF/MANIFEST.MF *.class 4. Podemos comprobar que el contenido del fichero es adecuado escribiendo jar tf fichero.jar



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”



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.



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”

5. Beneficios de usar el fichero JAR  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. 

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.  Compresión: El formato JAR permite comprimir tus ficheros para ahorrar espacio.  Portabilidad: El mecanismo para manejar los ficheros JAR son una parte estándar del corazón del API de la plataforma Java.

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.

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-seusan.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...


Similar Free PDFs