SlideShare una empresa de Scribd logo
1 de 59
Descargar para leer sin conexión
Crear Proyecto NetBeans
con Java Class Library
Magister Víctor Andrade Soto
Logro
Al finalizar la sesión el alumno será capaz de
utilizar la java class library con el propósito de
desarrollar aplicaciones de 3 capas, las mismas
que son esenciales en el desarrollo de
aplicaciones a nivel profesional
Conceptos Previos
Clase
Biblioteca
Método main
Importar paquetes.
Utilidad
• Desarrollar aplicaciones de librerías de clases paras refinar las
técnicas de programación.
• Importar clases definidas las que se usarán en todo el desarrollo del
cursos.
• Realizar el modelo de 3 capas que es con el que se desarrolla a nivel
profesional.
Desarrollo de aplicaciones simples en
consola
Desarrollo de aplicaciones visuales de
3 capas
JCL
La biblioteca de clases de Java ( JCL ) es un conjunto de
bibliotecas cargables dinámicamente que las aplicaciones Java
pueden llamar en tiempo de ejecución. Debido a que la
plataforma Java no depende de un sistema operativo
específico, las aplicaciones no pueden depender de ninguna
de las bibliotecas nativas de la plataforma. En cambio, la
Plataforma Java proporciona un conjunto completo de
bibliotecas de clases estándar, que contienen las funciones
comunes a los sistemas operativos modernos.
CL tiene tres propósitos dentro de la plataforma Java:
Al igual que otras bibliotecas de código estándar, proporcionan al
programador un conjunto bien conocido de funciones útiles, como
clases de contenedor y procesamiento de expresiones regulares .
La biblioteca proporciona una interfaz abstracta para tareas que
normalmente dependerían en gran medida del hardware y del sistema
operativo, como el acceso a la red y el acceso a archivos .
Es posible que algunas plataformas subyacentes no admitan todas las
funciones que espera una aplicación Java. En estos casos, la
implementación de la biblioteca puede emular esas características o
proporcionar una forma coherente de verificar la presencia de una
característica específica.
Creación de Librerías en Java
Las librerías son un conjunto de clases con funciones especificas que a
yudan a desarrollar aplicaciones más complejas de una forma sencilla,
por ejemplo si se requiere realizar cálculos matemáticos y emplear el fu
nciones como el Seno o Coseno, simplemente se importa la librería Mat
h y se utilizan estos métodos, en lugar de desarrollarlos.
Java cuenta con una extensa lista de librerías disponibles dentro del JDK
o desarrolladas por terceros, pero también existe la posibilidad de des
arrollar librerías propias para reutilizar de forma más eficiente el código
, por ejemplo si se trabaja de forma cotidiana con conexión a base de d
atos, se pueden desarrollar métodos genéricos que realicen la conexión
, que validen las consultas, etc. de forma que su uso reduzca el tiempo
de desarrollo e incremente la productividad.
Crear un nuevo proyecto de tipo “Java Class
Library”.
Crear paquete
Crear clase con métodos
El contenido
Para generar la librería se accede al menú Run, y con la opción Clean
and Build Project, se borran todas las clases compiladas previamente,
se vuelven a compilar y se genera un paquete .jar, que es el formato en
el que se distribuyen los ejecutables de java.
Usar la biblioteca
Código
Ejecución
Ejercicio
Cree una aplicación de Jframe para que tenga 2 cuadros de Texto de
ingreso de datos, un comboBox con las operaciones como Lista y un
cuadro de texto para mostrar el resultado de la operación que se elija.
Las operaciones son potencia y raíz.
Si X es el valor en el cuadro de texto 1
Si Y es el valor en el cuadro de texto 2
Si elige Raiz es X^(1/Y)
Si elige Potencia es X^Y
Estas operaciones deben estar en una librería
Desarrollo de una aplicación
Crearemos la siguiente estructura de paquetes
En presentación crearemos un formulario
Nombre: InterfaceFormulario
Añadir los siguientes controles
Colocar Text en las etiqutas y borrar el text de los TextField
Agregaremos fondo a un Formulario, esto lo haremos con una clase y una imagen...
Crearemos una clase llamada "FondoFormulario" (Java Class, en Presentacion) y a su vez crearemos un nuevo
package llamado "Imagenes" (donde pondremos todas las imagenes). en FondoFormulario.java pondremos el
siguiente codigo:
Importar Layout para el Formulario
Evento WindowOpened
Botón Salir y Limpiar
Botón Guardar
Se Programara el botón Guardar con las siguientes cosas: no se guardara en
ninguna parte solamente en RAM (de momento), se validará que se hallan
llenado los campos obligatorios y se mostrará en un JOptionPane lo que se
guardara a futuro...
Validar llenado de campos obligatorios. Esto lo haremos de la siguiente
manera:
- Preguntaremos al programa si los campos están llenados
- En caso de que no sea así le mandamos un mensaje al usuario que diga que
por favor llene el campo faltante
- Le ponemos la sentencia "return" para que así no siga adelante con las
demás acciones...
Primera parte
Segunda Parte
Ningún nombre y ningún apellido posee números, el teléfono no posee letras, el
RUC no posee letras por lo cual aquí haremos algo interesante que solucionará
algunas cosas que hay que hacer para validar números... (Nos evitaremos el
validarlos con un try catch que algunas veces queda mal y el error es mucho mas
grande)...
Diremos que el tipo de tecla que sera capturado en el JTextField será letras y
cuando sea un número diremos que eso no se escriba y que se consuma el
evento... ésto lo haremos de la siguiente manera:
Nos posamos sobre el JTextField que queramos editar, le damos click secundario
vamos a "Events" -- "Key" -- "KeyTyped"... ahí capturamos el evento (que es cuando
el usuario aprieta una tecla) en un char y lo analizamos y decimos al programa, ¿es
un dígito ese char? si es un dígito entonces consumimos el evento (o sea lo
hacemos nulo, que no lo escriba en el JTextField), sino solo se escribe... (Verán
como les servirá en un futuro esta parte)
Cuando validamos letras
Hacer lo mismo para el resto de jTextField que deben contener sólo letras
Cuando validamos dígitos
Hacer lo mismo para el resto de jTextField que deben contener sólo números
Limitar entrada
Ahora veremos que nuestro usuario no meta demasiados caracteres y
en algunos casos solo los necesarios, para practicas del ejercicio solo se
hara con la longitud del texto por lo cual también debemos entrar en el
KeyTyped contar la longitud de nuestro texto y si es mayor a la longitud
que nosotros queremos dar entonces que consuma el evento. Se
agrega encima del código ya escrito (Solo para RUC y Teléfono)
Negocio
En esta parte crearemos una clase la cual poseerá solo atributos y en
casos apartados puede tener uno que otro método entonces dentro de
Negocio le damos click secundario y "New" -- "Java Class"... Yo le
llamare "Persona" y le daré los atributos que pedimos en la interfaz
gráfica, hare un constructor por defecto y uno con valores por
parámetros, nos quedara algo así:
Clase Persona
Modelo
En este package es donde albergaremos la mayor cantidad de métodos
y la menor cantidad de atributos
Para tener todos los atributos de Persona lo haremos de la siguiente
manera:
Haremos una clase de nombre Agenda (Modelo le damos click
secundario y "New" -- "Java Class"...)
Ahora lo que resta es hacer Métodos para utilizar los atributos y luego
implementarlos en la Interfaz.
Así que crearemos el método guardar.
Clase Agenda
Mostrar Agenda
En este método lo que se hará simplemente es en una variable llamada
"Linea" albergaremos las líneas, valga la redundancia, de todas las
personas en el vector (recordar que como todo lo que hay en ese
vector es de tipo Object hay que devolverlo a Persona antes de poder
ocuparlo).
Muy Bien con eso tenemos lista la parte de Negocio Ahora solo resta
juntar Negocio con Presentación y el código estará completo Lo que
haremos es mostrar la agenda en un JOptionPane para no tener que
desarrollar un JFrame nuevo o meterle un JtextArea al Frame ya hecho.
Nos dirigimos al JFrame principal y al botón Guardar le llevaremos el
método Guardar que acabamos de crear de la siguiente manera
Modificar Guardar...
Importamos las clases Persona y Agenda y creamos un objeto de
la clase Agenda
Eliminamos la referencia al JOptionPane en el botón
Guardar y añadimos las líneas resaltadas
Añadir el botón mostrar en el formulario
Código del Botón
Práctica
• Siguiendo el mismo modelo desarrolle una aplicación que ingrese los
nombres y apellidos de N y notas x c/u.
• El programa deberá tener una clase que calcule el promedio
• La salida mostrará nombres, notas y promedio por alumno

Más contenido relacionado

La actualidad más candente

Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com AngularElmano Cavalcanti
 
Introdução a Linguagem Java
Introdução a Linguagem JavaIntrodução a Linguagem Java
Introdução a Linguagem JavaUFPA
 
Learn Java with Dr. Rifat Shahriyar
Learn Java with Dr. Rifat ShahriyarLearn Java with Dr. Rifat Shahriyar
Learn Java with Dr. Rifat ShahriyarAbir Mohammad
 
Java Presentation
Java PresentationJava Presentation
Java PresentationAmr Salah
 
Java SE 8 技術手冊第 1 章 - Java平台概論
Java SE 8 技術手冊第 1 章 - Java平台概論Java SE 8 技術手冊第 1 章 - Java平台概論
Java SE 8 技術手冊第 1 章 - Java平台概論Justin Lin
 
Modelado de servicios en contextos web. Aplicación en ecosistemas de aprendizaje
Modelado de servicios en contextos web. Aplicación en ecosistemas de aprendizajeModelado de servicios en contextos web. Aplicación en ecosistemas de aprendizaje
Modelado de servicios en contextos web. Aplicación en ecosistemas de aprendizajeGrial - University of Salamanca
 
Clases abstractas e interfaces
Clases abstractas e interfacesClases abstractas e interfaces
Clases abstractas e interfaceslopezcortes
 
MyBatis에서 JPA로
MyBatis에서 JPA로MyBatis에서 JPA로
MyBatis에서 JPA로Dongmin Shin
 
Java Collections | Collections Framework in Java | Java Tutorial For Beginner...
Java Collections | Collections Framework in Java | Java Tutorial For Beginner...Java Collections | Collections Framework in Java | Java Tutorial For Beginner...
Java Collections | Collections Framework in Java | Java Tutorial For Beginner...Edureka!
 
Manual de-macros-excel
Manual de-macros-excel  Manual de-macros-excel
Manual de-macros-excel Esther Gaytán
 
Java variable types
Java variable typesJava variable types
Java variable typesSoba Arjun
 
Jetpack Compose beginner.pdf
Jetpack Compose beginner.pdfJetpack Compose beginner.pdf
Jetpack Compose beginner.pdfAayushmaAgrawal
 
Componentes de eclipse
Componentes de eclipseComponentes de eclipse
Componentes de eclipsejaquiiMc
 
MAPA CONCEPTUAL
MAPA CONCEPTUAL MAPA CONCEPTUAL
MAPA CONCEPTUAL NeliRS2027
 
SISTEMAS DE NUMERACIÓN INFORMÁTICA
SISTEMAS DE NUMERACIÓN INFORMÁTICA SISTEMAS DE NUMERACIÓN INFORMÁTICA
SISTEMAS DE NUMERACIÓN INFORMÁTICA EiderJess
 
Devoxx France 2023 - Les nouveautés de Java 19 et 20
Devoxx France 2023 - Les nouveautés de Java 19 et 20Devoxx France 2023 - Les nouveautés de Java 19 et 20
Devoxx France 2023 - Les nouveautés de Java 19 et 20Jean-Michel Doudoux
 

La actualidad más candente (20)

P.O.O.
P.O.O.P.O.O.
P.O.O.
 
Basics of Java
Basics of JavaBasics of Java
Basics of Java
 
Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com Angular
 
Introdução a Linguagem Java
Introdução a Linguagem JavaIntrodução a Linguagem Java
Introdução a Linguagem Java
 
Learn Java with Dr. Rifat Shahriyar
Learn Java with Dr. Rifat ShahriyarLearn Java with Dr. Rifat Shahriyar
Learn Java with Dr. Rifat Shahriyar
 
Java Presentation
Java PresentationJava Presentation
Java Presentation
 
Java SE 8 技術手冊第 1 章 - Java平台概論
Java SE 8 技術手冊第 1 章 - Java平台概論Java SE 8 技術手冊第 1 章 - Java平台概論
Java SE 8 技術手冊第 1 章 - Java平台概論
 
Modelado de servicios en contextos web. Aplicación en ecosistemas de aprendizaje
Modelado de servicios en contextos web. Aplicación en ecosistemas de aprendizajeModelado de servicios en contextos web. Aplicación en ecosistemas de aprendizaje
Modelado de servicios en contextos web. Aplicación en ecosistemas de aprendizaje
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Clases abstractas e interfaces
Clases abstractas e interfacesClases abstractas e interfaces
Clases abstractas e interfaces
 
MyBatis에서 JPA로
MyBatis에서 JPA로MyBatis에서 JPA로
MyBatis에서 JPA로
 
Java Collections | Collections Framework in Java | Java Tutorial For Beginner...
Java Collections | Collections Framework in Java | Java Tutorial For Beginner...Java Collections | Collections Framework in Java | Java Tutorial For Beginner...
Java Collections | Collections Framework in Java | Java Tutorial For Beginner...
 
Manual de-macros-excel
Manual de-macros-excel  Manual de-macros-excel
Manual de-macros-excel
 
Java variable types
Java variable typesJava variable types
Java variable types
 
Jetpack Compose beginner.pdf
Jetpack Compose beginner.pdfJetpack Compose beginner.pdf
Jetpack Compose beginner.pdf
 
Componentes de eclipse
Componentes de eclipseComponentes de eclipse
Componentes de eclipse
 
MAPA CONCEPTUAL
MAPA CONCEPTUAL MAPA CONCEPTUAL
MAPA CONCEPTUAL
 
SISTEMAS DE NUMERACIÓN INFORMÁTICA
SISTEMAS DE NUMERACIÓN INFORMÁTICA SISTEMAS DE NUMERACIÓN INFORMÁTICA
SISTEMAS DE NUMERACIÓN INFORMÁTICA
 
Switch statement
Switch statementSwitch statement
Switch statement
 
Devoxx France 2023 - Les nouveautés de Java 19 et 20
Devoxx France 2023 - Les nouveautés de Java 19 et 20Devoxx France 2023 - Les nouveautés de Java 19 et 20
Devoxx France 2023 - Les nouveautés de Java 19 et 20
 

Similar a Java class library

C6 net beansentradasysalidas
C6 net beansentradasysalidasC6 net beansentradasysalidas
C6 net beansentradasysalidasalenco
 
Tutorial netbeans
Tutorial netbeansTutorial netbeans
Tutorial netbeansjorgeadelmo
 
Semana 4 Interfaces gráficas.pdf
Semana 4 Interfaces gráficas.pdfSemana 4 Interfaces gráficas.pdf
Semana 4 Interfaces gráficas.pdfOscarEstrada107669
 
Aprender código vba
Aprender código vbaAprender código vba
Aprender código vbassuser3a82fb
 
Manual de usuarios_de_eclipse_jenny
Manual de usuarios_de_eclipse_jennyManual de usuarios_de_eclipse_jenny
Manual de usuarios_de_eclipse_jennyJenny Martinez
 
Apuntes de introduccion a la programación
Apuntes de introduccion a la programaciónApuntes de introduccion a la programación
Apuntes de introduccion a la programaciónvictdiazm
 
Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)javier_ot99
 
PLC y Electroneumática: Codesys Grafcet
PLC y Electroneumática: Codesys GrafcetPLC y Electroneumática: Codesys Grafcet
PLC y Electroneumática: Codesys GrafcetSANTIAGO PABLO ALBERTO
 
Como insertar una imagen en eclipse java
Como insertar una imagen en eclipse javaComo insertar una imagen en eclipse java
Como insertar una imagen en eclipse javaJosué Naquid
 
investigacion unidad tres componentes y librerias
investigacion unidad tres componentes y libreriasinvestigacion unidad tres componentes y librerias
investigacion unidad tres componentes y libreriasAnel Sosa
 
_Concepto de interfaz_interfaz_interfaz_interfaz_interfaz_.pptx
_Concepto de interfaz_interfaz_interfaz_interfaz_interfaz_.pptx_Concepto de interfaz_interfaz_interfaz_interfaz_interfaz_.pptx
_Concepto de interfaz_interfaz_interfaz_interfaz_interfaz_.pptxFabianAndresNuezPinz
 
INFOSAN Curso de delphi básico
INFOSAN Curso de delphi básicoINFOSAN Curso de delphi básico
INFOSAN Curso de delphi básicoFRANCIACOCO
 

Similar a Java class library (20)

Java script
Java scriptJava script
Java script
 
Tutorial net beans
Tutorial net beansTutorial net beans
Tutorial net beans
 
C6 net beansentradasysalidas
C6 net beansentradasysalidasC6 net beansentradasysalidas
C6 net beansentradasysalidas
 
Tutorial netbeans
Tutorial netbeansTutorial netbeans
Tutorial netbeans
 
Manual de eclpse emrt
Manual de eclpse emrtManual de eclpse emrt
Manual de eclpse emrt
 
Semana 4 Interfaces gráficas.pdf
Semana 4 Interfaces gráficas.pdfSemana 4 Interfaces gráficas.pdf
Semana 4 Interfaces gráficas.pdf
 
Aprender código vba
Aprender código vbaAprender código vba
Aprender código vba
 
Clase swing
Clase swingClase swing
Clase swing
 
Manual de usuarios_de_eclipse_jenny
Manual de usuarios_de_eclipse_jennyManual de usuarios_de_eclipse_jenny
Manual de usuarios_de_eclipse_jenny
 
Tutorial java fx_8_espanol
Tutorial java fx_8_espanolTutorial java fx_8_espanol
Tutorial java fx_8_espanol
 
Apuntes de introduccion a la programación
Apuntes de introduccion a la programaciónApuntes de introduccion a la programación
Apuntes de introduccion a la programación
 
Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)Manual de netbeans_7(2)(2)(2)
Manual de netbeans_7(2)(2)(2)
 
Josi22
Josi22Josi22
Josi22
 
PLC y Electroneumática: Codesys Grafcet
PLC y Electroneumática: Codesys GrafcetPLC y Electroneumática: Codesys Grafcet
PLC y Electroneumática: Codesys Grafcet
 
Netbeans
Netbeans Netbeans
Netbeans
 
Como insertar una imagen en eclipse java
Como insertar una imagen en eclipse javaComo insertar una imagen en eclipse java
Como insertar una imagen en eclipse java
 
investigacion unidad tres componentes y librerias
investigacion unidad tres componentes y libreriasinvestigacion unidad tres componentes y librerias
investigacion unidad tres componentes y librerias
 
_Concepto de interfaz_interfaz_interfaz_interfaz_interfaz_.pptx
_Concepto de interfaz_interfaz_interfaz_interfaz_interfaz_.pptx_Concepto de interfaz_interfaz_interfaz_interfaz_interfaz_.pptx
_Concepto de interfaz_interfaz_interfaz_interfaz_interfaz_.pptx
 
INFOSAN Curso de delphi básico
INFOSAN Curso de delphi básicoINFOSAN Curso de delphi básico
INFOSAN Curso de delphi básico
 
Como usar net beans
Como usar net beansComo usar net beans
Como usar net beans
 

Más de LCA

Riesgos de no implementar el estándar itil en una empresa
Riesgos de no implementar el estándar itil en una empresaRiesgos de no implementar el estándar itil en una empresa
Riesgos de no implementar el estándar itil en una empresaLCA
 
S01.s2 material
S01.s2 materialS01.s2 material
S01.s2 materialLCA
 
Expo 1
Expo 1Expo 1
Expo 1LCA
 
Tarea semana01 sesión 2
Tarea semana01   sesión 2Tarea semana01   sesión 2
Tarea semana01 sesión 2LCA
 
G1 expo1 s2.1
G1 expo1 s2.1G1 expo1 s2.1
G1 expo1 s2.1LCA
 
Foro s2 5 ventajas del estándar de trabajo itil
Foro s2 5 ventajas del estándar de trabajo itilForo s2 5 ventajas del estándar de trabajo itil
Foro s2 5 ventajas del estándar de trabajo itilLCA
 
Itil estrategia del servicio
Itil  estrategia del servicioItil  estrategia del servicio
Itil estrategia del servicioLCA
 
Ciclo de vida de itil
Ciclo de vida de itilCiclo de vida de itil
Ciclo de vida de itilLCA
 
Grupo 1 itil estrategia del servicio
Grupo 1 itil  estrategia del servicioGrupo 1 itil  estrategia del servicio
Grupo 1 itil estrategia del servicioLCA
 
S01.s1 material
S01.s1 materialS01.s1 material
S01.s1 materialLCA
 
S02.s1 material
S02.s1 materialS02.s1 material
S02.s1 materialLCA
 
S02.s2 material
S02.s2 materialS02.s2 material
S02.s2 materialLCA
 
S03.s1 material
S03.s1 materialS03.s1 material
S03.s1 materialLCA
 
S03.s2 material
S03.s2 materialS03.s2 material
S03.s2 materialLCA
 
Modelo proyecto
Modelo proyectoModelo proyecto
Modelo proyectoLCA
 
Herencia para jframe y diseño de jmenu,j internalframe, jdialog
Herencia para jframe y diseño de jmenu,j internalframe, jdialogHerencia para jframe y diseño de jmenu,j internalframe, jdialog
Herencia para jframe y diseño de jmenu,j internalframe, jdialogLCA
 
Gu is awt_swing
Gu is awt_swingGu is awt_swing
Gu is awt_swingLCA
 
Elementos avanzados de poo
Elementos avanzados de pooElementos avanzados de poo
Elementos avanzados de pooLCA
 

Más de LCA (18)

Riesgos de no implementar el estándar itil en una empresa
Riesgos de no implementar el estándar itil en una empresaRiesgos de no implementar el estándar itil en una empresa
Riesgos de no implementar el estándar itil en una empresa
 
S01.s2 material
S01.s2 materialS01.s2 material
S01.s2 material
 
Expo 1
Expo 1Expo 1
Expo 1
 
Tarea semana01 sesión 2
Tarea semana01   sesión 2Tarea semana01   sesión 2
Tarea semana01 sesión 2
 
G1 expo1 s2.1
G1 expo1 s2.1G1 expo1 s2.1
G1 expo1 s2.1
 
Foro s2 5 ventajas del estándar de trabajo itil
Foro s2 5 ventajas del estándar de trabajo itilForo s2 5 ventajas del estándar de trabajo itil
Foro s2 5 ventajas del estándar de trabajo itil
 
Itil estrategia del servicio
Itil  estrategia del servicioItil  estrategia del servicio
Itil estrategia del servicio
 
Ciclo de vida de itil
Ciclo de vida de itilCiclo de vida de itil
Ciclo de vida de itil
 
Grupo 1 itil estrategia del servicio
Grupo 1 itil  estrategia del servicioGrupo 1 itil  estrategia del servicio
Grupo 1 itil estrategia del servicio
 
S01.s1 material
S01.s1 materialS01.s1 material
S01.s1 material
 
S02.s1 material
S02.s1 materialS02.s1 material
S02.s1 material
 
S02.s2 material
S02.s2 materialS02.s2 material
S02.s2 material
 
S03.s1 material
S03.s1 materialS03.s1 material
S03.s1 material
 
S03.s2 material
S03.s2 materialS03.s2 material
S03.s2 material
 
Modelo proyecto
Modelo proyectoModelo proyecto
Modelo proyecto
 
Herencia para jframe y diseño de jmenu,j internalframe, jdialog
Herencia para jframe y diseño de jmenu,j internalframe, jdialogHerencia para jframe y diseño de jmenu,j internalframe, jdialog
Herencia para jframe y diseño de jmenu,j internalframe, jdialog
 
Gu is awt_swing
Gu is awt_swingGu is awt_swing
Gu is awt_swing
 
Elementos avanzados de poo
Elementos avanzados de pooElementos avanzados de poo
Elementos avanzados de poo
 

Java class library

  • 1. Crear Proyecto NetBeans con Java Class Library Magister Víctor Andrade Soto
  • 2. Logro Al finalizar la sesión el alumno será capaz de utilizar la java class library con el propósito de desarrollar aplicaciones de 3 capas, las mismas que son esenciales en el desarrollo de aplicaciones a nivel profesional
  • 4. Utilidad • Desarrollar aplicaciones de librerías de clases paras refinar las técnicas de programación. • Importar clases definidas las que se usarán en todo el desarrollo del cursos. • Realizar el modelo de 3 capas que es con el que se desarrolla a nivel profesional.
  • 5. Desarrollo de aplicaciones simples en consola Desarrollo de aplicaciones visuales de 3 capas
  • 6. JCL La biblioteca de clases de Java ( JCL ) es un conjunto de bibliotecas cargables dinámicamente que las aplicaciones Java pueden llamar en tiempo de ejecución. Debido a que la plataforma Java no depende de un sistema operativo específico, las aplicaciones no pueden depender de ninguna de las bibliotecas nativas de la plataforma. En cambio, la Plataforma Java proporciona un conjunto completo de bibliotecas de clases estándar, que contienen las funciones comunes a los sistemas operativos modernos.
  • 7. CL tiene tres propósitos dentro de la plataforma Java: Al igual que otras bibliotecas de código estándar, proporcionan al programador un conjunto bien conocido de funciones útiles, como clases de contenedor y procesamiento de expresiones regulares . La biblioteca proporciona una interfaz abstracta para tareas que normalmente dependerían en gran medida del hardware y del sistema operativo, como el acceso a la red y el acceso a archivos . Es posible que algunas plataformas subyacentes no admitan todas las funciones que espera una aplicación Java. En estos casos, la implementación de la biblioteca puede emular esas características o proporcionar una forma coherente de verificar la presencia de una característica específica.
  • 8. Creación de Librerías en Java Las librerías son un conjunto de clases con funciones especificas que a yudan a desarrollar aplicaciones más complejas de una forma sencilla, por ejemplo si se requiere realizar cálculos matemáticos y emplear el fu nciones como el Seno o Coseno, simplemente se importa la librería Mat h y se utilizan estos métodos, en lugar de desarrollarlos. Java cuenta con una extensa lista de librerías disponibles dentro del JDK o desarrolladas por terceros, pero también existe la posibilidad de des arrollar librerías propias para reutilizar de forma más eficiente el código , por ejemplo si se trabaja de forma cotidiana con conexión a base de d atos, se pueden desarrollar métodos genéricos que realicen la conexión , que validen las consultas, etc. de forma que su uso reduzca el tiempo de desarrollo e incremente la productividad.
  • 9. Crear un nuevo proyecto de tipo “Java Class Library”.
  • 10.
  • 12. Crear clase con métodos
  • 14. Para generar la librería se accede al menú Run, y con la opción Clean and Build Project, se borran todas las clases compiladas previamente, se vuelven a compilar y se genera un paquete .jar, que es el formato en el que se distribuyen los ejecutables de java.
  • 15.
  • 16.
  • 18.
  • 19.
  • 22. Ejercicio Cree una aplicación de Jframe para que tenga 2 cuadros de Texto de ingreso de datos, un comboBox con las operaciones como Lista y un cuadro de texto para mostrar el resultado de la operación que se elija. Las operaciones son potencia y raíz. Si X es el valor en el cuadro de texto 1 Si Y es el valor en el cuadro de texto 2 Si elige Raiz es X^(1/Y) Si elige Potencia es X^Y Estas operaciones deben estar en una librería
  • 23. Desarrollo de una aplicación
  • 24.
  • 25. Crearemos la siguiente estructura de paquetes
  • 26. En presentación crearemos un formulario
  • 28. Añadir los siguientes controles Colocar Text en las etiqutas y borrar el text de los TextField
  • 29. Agregaremos fondo a un Formulario, esto lo haremos con una clase y una imagen... Crearemos una clase llamada "FondoFormulario" (Java Class, en Presentacion) y a su vez crearemos un nuevo package llamado "Imagenes" (donde pondremos todas las imagenes). en FondoFormulario.java pondremos el siguiente codigo:
  • 30.
  • 31.
  • 32.
  • 33. Importar Layout para el Formulario
  • 35.
  • 36. Botón Salir y Limpiar
  • 37. Botón Guardar Se Programara el botón Guardar con las siguientes cosas: no se guardara en ninguna parte solamente en RAM (de momento), se validará que se hallan llenado los campos obligatorios y se mostrará en un JOptionPane lo que se guardara a futuro... Validar llenado de campos obligatorios. Esto lo haremos de la siguiente manera: - Preguntaremos al programa si los campos están llenados - En caso de que no sea así le mandamos un mensaje al usuario que diga que por favor llene el campo faltante - Le ponemos la sentencia "return" para que así no siga adelante con las demás acciones...
  • 40. Ningún nombre y ningún apellido posee números, el teléfono no posee letras, el RUC no posee letras por lo cual aquí haremos algo interesante que solucionará algunas cosas que hay que hacer para validar números... (Nos evitaremos el validarlos con un try catch que algunas veces queda mal y el error es mucho mas grande)... Diremos que el tipo de tecla que sera capturado en el JTextField será letras y cuando sea un número diremos que eso no se escriba y que se consuma el evento... ésto lo haremos de la siguiente manera: Nos posamos sobre el JTextField que queramos editar, le damos click secundario vamos a "Events" -- "Key" -- "KeyTyped"... ahí capturamos el evento (que es cuando el usuario aprieta una tecla) en un char y lo analizamos y decimos al programa, ¿es un dígito ese char? si es un dígito entonces consumimos el evento (o sea lo hacemos nulo, que no lo escriba en el JTextField), sino solo se escribe... (Verán como les servirá en un futuro esta parte)
  • 41.
  • 42. Cuando validamos letras Hacer lo mismo para el resto de jTextField que deben contener sólo letras
  • 43. Cuando validamos dígitos Hacer lo mismo para el resto de jTextField que deben contener sólo números
  • 44. Limitar entrada Ahora veremos que nuestro usuario no meta demasiados caracteres y en algunos casos solo los necesarios, para practicas del ejercicio solo se hara con la longitud del texto por lo cual también debemos entrar en el KeyTyped contar la longitud de nuestro texto y si es mayor a la longitud que nosotros queremos dar entonces que consuma el evento. Se agrega encima del código ya escrito (Solo para RUC y Teléfono)
  • 45.
  • 46. Negocio En esta parte crearemos una clase la cual poseerá solo atributos y en casos apartados puede tener uno que otro método entonces dentro de Negocio le damos click secundario y "New" -- "Java Class"... Yo le llamare "Persona" y le daré los atributos que pedimos en la interfaz gráfica, hare un constructor por defecto y uno con valores por parámetros, nos quedara algo así:
  • 47.
  • 49. Modelo En este package es donde albergaremos la mayor cantidad de métodos y la menor cantidad de atributos Para tener todos los atributos de Persona lo haremos de la siguiente manera: Haremos una clase de nombre Agenda (Modelo le damos click secundario y "New" -- "Java Class"...) Ahora lo que resta es hacer Métodos para utilizar los atributos y luego implementarlos en la Interfaz. Así que crearemos el método guardar.
  • 50.
  • 52. Mostrar Agenda En este método lo que se hará simplemente es en una variable llamada "Linea" albergaremos las líneas, valga la redundancia, de todas las personas en el vector (recordar que como todo lo que hay en ese vector es de tipo Object hay que devolverlo a Persona antes de poder ocuparlo).
  • 53.
  • 54. Muy Bien con eso tenemos lista la parte de Negocio Ahora solo resta juntar Negocio con Presentación y el código estará completo Lo que haremos es mostrar la agenda en un JOptionPane para no tener que desarrollar un JFrame nuevo o meterle un JtextArea al Frame ya hecho. Nos dirigimos al JFrame principal y al botón Guardar le llevaremos el método Guardar que acabamos de crear de la siguiente manera Modificar Guardar...
  • 55. Importamos las clases Persona y Agenda y creamos un objeto de la clase Agenda Eliminamos la referencia al JOptionPane en el botón Guardar y añadimos las líneas resaltadas
  • 56. Añadir el botón mostrar en el formulario
  • 58.
  • 59. Práctica • Siguiendo el mismo modelo desarrolle una aplicación que ingrese los nombres y apellidos de N y notas x c/u. • El programa deberá tener una clase que calcule el promedio • La salida mostrará nombres, notas y promedio por alumno