1. Instituto Tecnológico Superior de Felipe Carrillo Puerto
Ingeniería en Sistemas Computacionales
Materia: Tópicos Avanzados de Programación
Docente: Dr. Niels Henryk Aranda Cuevas
Reporte Técnico
Unidad 3: Componentes y Librerías
Integrantes:
Chable Pat Jhonny Gabriel
Balam Yam Wilberth
Ayala Mutul Ezer Abizai
Vega Segura Adrián Asís
Poot Tuz Efraín Antonio
Aké Pech Jorge Manuel
Semestre: 4th
Aula: J-3 Grupo: “a”
Ciclo Escolar: Enero – Julio
2. Unidad 3: Componentes y Librerías
Creación de un paquete (package) en Netbeans
• Para organizar nuestras clases podemos utilizar paquetes, para después utilizarlo junto con
otras clases y no están duplicando así los códigos. En el siguiente ejemplo se crea un
paquete llamado LibreriaMatematica que utilizaremos más adelante.
Primero creamos un proyecto, Java Class Library. Al terminarse de crear el proyecto,
creamos un paquete llamado LibreriaMatematica, y dentro de ese paquete creamos una
clase Java llamado Aritmetica:
El código de la clase Aritmetica.java es el siguiente:
package LibreriaMatematica;
public class Aritmetica {
public double sumar (double a, double b){return a+b;}
public double restar (double a, double b){return a-b;}
public double multiplicar (double a, double b){return a*b;}
public double dividir (double a, double b){return a/b;}
}
En el mismo paquete creamos otra clase llamada Calculo.java e ingresamos el código
siguiente:
package LibreriaMatematica;
public class Calculo {
public double raiz(double x){return Math.sqrt(x);}
public double potencia (double x, double y) {return Math.pow(x, y);}
}
Ahora proceda a generar el archivo JAR que se utilizará en otra aplicación. Para ello pulse
con el botón derecho del mouse sobre el nombre del proyecto y seleccione la opción Generar
(build). Con ello ha generado el archivo JAR que utilizará en la próxima sección del ejemplo.
3. Después cree un nuevo proyecto, de tipo escritorio, para anexar y utilizar la biblioteca de
clase. Denomine este proyecto como Calculadora y agregue la librería de clase (Agregar
proyecto…) pulse sobre la carpeta Librería de su proyecto y agréguelo ubicando la ruta
donde tiene el archivo.jar.
Después, crear una clase de tipo JFRAME. En el formulario principal de nuestra aplicación
de escritorio, coloque dos objetos JTextField, con sus respectivas etiquetas, una etiqueta con
el mensaje de Resultado y otra que mostrará el valor final. Además, crear seis botones el
primero realizará una suma, el segundo una resta, el tercero un producto, el cuarto una
división, el quinto botón elevará el primer número a la potencia que será el segundo número
y el ultimo obtendrá la raíz de ambos números.
En la clase principal del formulario se instancian las clases que derivará de Aritmetica y
Calculo.
El código para utilizar estas instanciaciones es el siguiente:
import javax.swing.JOptionPane; //Para los mensajes en las ventanas
public class Calculadora extends javax.swing.JFrame {
PaqueteJava.Aritmetica aux = new PaqueteJava.Aritmetica();
PaqueteJava.Calculo aux2 = new PaqueteJava.Calculo();
public Calculadora() {
initComponents();
}//Fin del Contructor
//Todo el código de los botones va dentro de esta clase
}//Fin de la clase Calculadora
4. Una vez creadas las instancias de ambas clases, seleccione el evento actionPerfomed del
botón Sumar y escriba el siguiente código: antes tenemos que cambiar el nombre de variable
del botón por btnSuma.
private void btnSumaActionPerformed(java.awt.event.ActionEvent evt) {
try{ //Excepciones si no se introducen los datos correctos
double a = Double.parseDouble(txtValor1.getText()); //Primera caja de texto
double b = Double.parseDouble(txtValor2.getText()); //Segunda caja de texto
double r =aux.sumar(a,b);
lblResultado.setText(String.valueOf(r)); //Etiqueta que Muestra el
resultado
}catch(NumberFormatException ex){JOptionPane.showMessageDialog(null,"Ingrese
los Datos!!!","Dato Inválido", JOptionPane.WARNING_MESSAGE);}
}//Fin del método del evento del botón
El código para el botón Restar btnResta es:
private void btnRestaActionPerformed(java.awt.event.ActionEvent evt) {
try{
double a = Double.parseDouble(txtValor1.getText()); // Valor
caja1
double b = Double.parseDouble(txtValor2.getText()); //Valor caja
2
double r =aux.restar(a,b);
lblResultado.setText(String.valueOf(r));
}catch(NumberFormatException ex){JOptionPane.showMessageDialog(null,"Ingrese los
Datos!!!","Dato Inválido", JOptionPane.WARNING_MESSAGE);}
}//Fin del método del evento
Para el tercer botón, Multiplicar, cambiamos el nombre de variable por btnProducto.
Prácticamente, así será para cada botón dependiendo de la función que realice.
El código para este botón es:
private void btnProductoActionPerformed(java.awt.event.ActionEvent evt) {
try{
double a = Double.parseDouble(txtValor1.getText()); // Valor caja1
double b = Double.parseDouble(txtValor2.getText()); //Valor caja 2
double r =aux.multiplicar(a,b); //Instancia la clase Arimetica
5. lblResultado.setText(String.valueOf(r));
}catch(NumberFormatException ex){JOptionPane.showMessageDialog(null,"Ingrese los
Datos!!!","Dato Inválido", JOptionPane.WARNING_MESSAGE);}
}//Fin del método del evento
El código del cuarto botón btnDivision es como sigue:
private void btnDivisionActionPerformed(java.awt.event.ActionEvent evt) {
try{
double a = Double.parseDouble(txtValor1.getText()); // Valor caja1
double b = Double.parseDouble(txtValor2.getText()); //Valor caja 2
double r =aux.division(a,b);
lblResultado.setText(String.valueOf(r));
}catch(NumberFormatException ex){JOptionPane.showMessageDialog(null,"Ingrese los
Datos!!!","Dato Inválido", JOptionPane.WARNING_MESSAGE);}
}//Fin del método del evento
El código que se implementará en el botón Potencia es el siguiente:
btnPotencia
private void btnPotenciaActionPerformed(java.awt.event.ActionEvent evt) {
try{
double a = Double.parseDouble(txtValor1.getText()); // Valor caja1
double b = Double.parseDouble(txtValor2.getText()); //Valor caja 2
double r =aux2.potencia(a,b);//Aux2 crea la intancia de la clase
Calculo
lblResultado.setText(String.valueOf(r));
}catch(NumberFormatException
ex){JOptionPane.showMessageDialog(null,"Ingrese los Datos!!!","Dato Inválido",
JOptionPane.WARNING_MESSAGE);}
}//Fin del método del evento
6. El ultimo botón obtiene las raíces de los dos número por separado y muestra sus
resultados en la misma Etiqueta de Resultados, concatenando los resultados del
siguiente modo:
Resultado: Raiz1 + ” y ”+ Raiz2
private void btnRaicesActionPerformed(java.awt.event.ActionEvent evt) {
try
{
double a = Double.parseDouble(txtValor1.getText());
double b = Double.parseDouble(txtValor2.getText());
double r = aux2.raiz(a); //Raíz del Primer Valor
double r2 = aux2.raiz(b); //Raíz del Segundo Número
lblResultado.setText(String.valueOf(r)+" y
"+String.valueOf(r2));
}catch(NumberFormatException
ex){JOptionPane.showMessageDialog(null,"Ingrese los Datos!!!","Dato
Inválido", JOptionPane.WARNING_MESSAGE);}
}
7. CONCLUSIÓN
BALAM YAM WILBERTH
En esta cuarta unidad iniciamos con el desarrollo de software, pero organizando
nuestro proyecto por medio package, que nos ayuda a reutilizar código, aunque aún
existe confusión sobre la diferencia entre package y librerías.
POOT TUZ EFRAIN ANTONIO
En la unidad cuatro vimos todo sobre package y librerías todo lo visto en clases lo
aplicamos en el proyecto integrador creando nuestras propias librerías con clase y
añadirlo en netbeans agregando las referencias de librería y packege.
AYALA MUTUL EZER ABISAI
En la cuarta unidad seguimos con el desarrollo de aplicaciones de escritorio pero
en este caso ya programando cada uno de los comandos que utilizamos, utilizamos
packages este paquete nos sirvió de mucho en nuestro proyecto integrador, la
función de los paquetes es que nos evita reescribir el mismo código, una vez ya
creada el paquete solo la llamamos en la clase sin que reescribamos el código y
nos evita pérdida de tiempo.
AKE PECH JORGE MANUEL:
Iniciamos a hacer el software, en donde aprendimos a hacer y crear eventos y
hacer la interfaz de diferentes cosas, lo cual nos enseñó a hacer y vincular por
códigos las acciones de cada parte de la interfaz.
CHABLE PAT JHONNY GABRIEL
El uso de las librerías le ayuda al programador de Java a disminuir el uso excesivo
y existente de código. Es más fácil para el programador crear paquetes de código
que utiliza en varias ocasiones en sus proyectos que realiza, que volver a copiar
esos mismos códigos. Además de esta forma se ahorra tiempo en diseñar un
programa y evita duplicar el código, ya que para un programador el tiempo es
indispensable para realizar un buen proyecto. Esta es una forma también de
organizar los códigos.
8. VEGA SEGURA ADRIÁN ASÍS
En esta tercera unidad nos adentramos en el desarrollo de aplicaciones de escritorio
(Lan), empezamos a generar programas cada vez más complejos y visuales porque
ya contenían interfaz gráfica. Una de las cosas más interesantes que aprendimos
fue la utilización de paquetes, que viene siendo la forma de reutilizar cierto código.
El código se debe usar repetidas veces en el programa así es mejor transformarlo
a paquete (.jar) para después llamarlo cada vez que se necesite.