Вы находитесь на странице: 1из 90

MDULO

ELECTIVA PROFESIONAL II





WILSON DAVID FLOREZ BARBOZA
Ingeniero de Sistemas
Especialista administracin de la informtica educativa



Licenciatura en Educacin Bsica con nfasis en Tecnologa e Informtica


Sincelejo Sucre
2013

Corporacin universitaria del Caribe CECAR
TABLA DE CONTENIDO
Pg.
INTRODUCCIN
JUSTIFICACION
REFERENTES TEORICOS
INSTRUCCIONES DE MANEJO
UNIDAD 1
1. CONCEPTOS BASICOS DE PROGRAMACION ORIENTADA A OBJETOS
(POO).
1.1 Conceptualizacin de la POO.
1.1.1 Definiciones
1.1.2 Importancia de la POO.
1.1.3 Diferencia con programacin estructurada.
1.1.4 Lenguajes de programacin
1.1.5 qu es un objeto?
1.2 Caractersticas de la POO.
1.2.1 Abstraccin.
1.2.2 Clases y sus componentes.
1.2.3 Mensaje.
1.2.4 Polimorfismo.
1.2.5 Herencia.
1.2.6 Encapsulacin.
1.3 Modificadores de acceso
1.4 Los mtodos constructores, get y set de una clase.
El mtodo constructor de una clase
1.5 Diagramas de clases
1.6 El lenguaje java
1.6.1 La comunidad de java
1.6.2 Netbeans como IDE de desarrollo

1.6.3 Variables y tipos de datos
1.6.4 Estructuras de control
1.6.5 Concepto de libreras.
1.6.6 Definicin de una clase
1.6.7 Definicin de un objeto de programacin
1.6.8 Objeto del mundo real. Vs objeto de programacin
1.6.9 Ejemplo del uso de otras clases.
UNIDAD 2:
2. DISEO DE INTERFACES GRAFICAS CON LOS OBJETOS GRAFICOS
DE LA LIBRERA SWING Y VALIDACION DE INFORMACION.
2.1 Consideracin en el diseo de una GUI:
2.2 Contenedores y componentes grficos (Objetos grficos)
2.2.1 Formularios: Clase jFrame
2.2.2 Cajas de textos: Clase jTextField.
2.2.3 Etiquetas: Clase jLabel.
2.2.4 Listas despegables: Clase jComboBox
2.2.5 reas de textos: Clase jTextArea.
2.2.6 Botones de opciones: Clase jRadioButton
2.2.7 Botones: Clase jButton
2.2.8 Mtodos importante en los componentes
2.2.9 Mas componentes, ejemplo con Netbeans
2.2.10 El mtodo initcomponents
2.2.11 Eventos
2.3 Creacin de clase de validacin.
2.4 Validacin de los objetos grficos de un formulario utilizando la clase
de validacin creada en la seccin anterior.

UNIDAD 3
3. COMUNICACIN A BASE DE DATOS Y REPORTES
3.1 Creacin de clases de comunicacin JAVA con MYSQL
3.2 Guardar informacin en la base de datos de una interfaz grafica
validada usando la clase Conexin
3.3 Actualizar informacin en la base de datos de una interfaz grafica
validada
3.4 Eliminar informacin en la base de datos de una interfaz grafica
validada
3.5 Buscar informacin por llave primaria desde una base de datos de una
interfaz grafica





En este modulo se explicar la programacin orientada a objetos que se desarrollan
bajo un contexto aplicado al igual que en las matemticas y la fsica. El objetivo de este
modulo es brindarle al estudiante una nocin de cmo estn hechos los sistemas de
informacin y de paso poder animarlo a desarrollar sus propios aplicativos.
Es conveniente que el licenciado de informtica pueda ofrecerle a sus futuros
educandos el enfoque de programador ante el manejo de los sistemas informticos.
Centrarse en este aspecto es sentirse con mayor propiedad y control hacia las
aplicaciones informticas.
Durante el desarrollo del modulo el estudiante ir adquiriendo conceptos bsicos de
programacin orientada a objetos, manejo de interfaces grficas y comunicacin con las
bases de datos con la ayuda de entornos de desarrollo (IDE) o herramientas grficas.
La mayora de validaciones, conexiones a base de datos, sentencias para manipular las
bases de datos ya estn programados, lo que se busca primordialmente es que el
estudiante se acostumbre a un estndar de trabajo al momento de desarrollar sus
interfaces grficas, conexiones a bases de datos, entre otros. La buena prctica de
estndares de trabajo para desarrollo de sistemas de informacin har que el
estudiante le sea tan fcil como armar un rompecabezas, sin dejar de lado que existen
muchas formas de hacerlo.
La programacin orientada a objetos posee una caracterstica que concede mucha
ventaja al momento de desarrollar y es la abstraccin que como se define en Wikipedia:
el trmino se refiere al nfasis en el "qu hace?" ms que en el "cmo lo
hace?" (Caracterstica de caja negra)
1
. Teniendo en cuenta esta definicin las cosas
sern mucho ms fciles para el estudiante al momento de desarrollar las lecciones
propuestas.

1
https://es.wikipedia.org/wiki/Abstracci%C3%B3n_(inform%C3%A1tica)
INTRODUCCIN
Es indispensable que los educadores con nfasis en la informtica otorguen a sus
futuros educandos una perspectiva aplicada hacia los sistemas informticos, de esta
manera podr despertar su inters para que posteriormente se profundice en
conocimientos afines en un mbito profesional como la ingeniera.
Las soluciones que puede ofrecer el desarrollo de sistemas de informacin son
incontables en cuanto al manejo de la informacin en general ya sea para controlar
procesos administrativos que el futuro docente deba desempear o para implementar
metodologas ms didcticas en sus clases.





En la globalizacin, la tecnologa informtica juega un papel importante porque permite
obtener informacin desde cualquier parte del mundo. Todos los profesionales deben
estar en sintona con este tema especialmente aquellos con carreras afines, este
modulo busca que el estudiante de licenciatura en informtica profundice en este tema
de desarrollo de sistemas de informacin y con ellos desarrolle habilidades en el
manejo de todas las herramientas de informacin.

Dentro del perfil de egresado en licenciatura en informtica se encuentra que ste debe
propiciar proyectos investigativos que contribuyan a la solucin de problemas de la
comunidad educativa, es ah donde este modulo proporcionar a los estudiantes tener
una visin ms amplia en cuanto al tema tecnolgico y le permitirn crear proyectos
ms enriquecedores.

Los futuros egresados de licenciatura en informtica podrn transferir estos
conocimientos a sus estudiantes, permitiendo que ellos tengan una visin del desarrollo
de sistemas de informacin, y una posible tendencia vocacional.






JUSTIFICACIN

METACOGNITIVA Utiliza herramientas informticas para el diseo e
implantacin de un sistema de informacin en el mbito
escolar, desarrollado bajo paradigma POO.
RELACIONAL Aplica los conocimientos obtenidos a situaciones
laborales concretas utilizando los procedimientos
adecuados, para solucionar problemas de manera
autnoma y transferir las situaciones adquiridas a
situaciones novedosas.
TECNOLGICA Crea sistemas de informacin desarrollado bajo
paradigma POO en el contexto educativo.
ARGUMENTATIVA Diferencia la POO del resto de paradigmas de
programacin


COMPETENCIAS QUE PROMUEVEN LA ASIGNATURA

Con el transcurso de los aos se ha venido dando la necesidad de innovar e investigar
herramientas y recursos que sirvan y faciliten la evolucin de la informtica, y que por
medio de stos las personas obtengan una mejor enseanza y apliquen de una
manera correcta todos los medios tecnolgicos que se nos han dado. Un ejemplo de
todas esas necesidades que se han presentado ha sido facilitar para las empresas,
colegios, entre otros, el implementar y disear sistemas de informacin que sean de
gran ayuda. Es por esto que cada da se busca una mejor herramienta para su
aprovechamiento eficaz.
Entre los lenguajes de programacin encontramos a J ava, que es un lenguaje de
programacin orientado a objetos desarrollado por Sun MicroSystems, una compaa
reconocida por sus estaciones de trabajo UNIX de alta calidad. J ava es fundamentado
en c++, el lenguaje java se diseo para ser pequeo, sencillo y porttil a travs de
plataformas y sistemas operativos, tanto a nivel de cdigo fuente como binario, lo que
significa que los programas java (applets y aplicaciones), pueden ejecutarse en
cualquier computadora que tenga instalada una maquina virtual de java. A pesar que
java es un lenguaje de programacin orientado a objetos, tambin puede ser utilizado
como un lenguaje estructurado, lo cual se hace necesario para poder iniciar nuestro
estudio de conceptos fundamentales de programacin. [1]
J ava es un lenguaje de programacin y la primera plataforma informtica creada por
Sun Microsystems en 1995. Es la tecnologa subyacente que permite el uso de
programas punteros, como herramientas, juegos y aplicaciones de negocios. J ava se
ejecuta en ms de 850 millones de ordenadores personales de todo el mundo y en
miles de millones de dispositivos, como dispositivos mviles y aparatos de televisin. [2]
Todos los sistemas de informacin guardan su informacin en los sistemas de gestin
de base de datos SGBD, MYSQL se ha convertido en uno de los principales SGBD a
REFERENTES TEORICOS
nivel mundial y fue desarrollada por MySQL AB, una empresa sueca
2
, MySQL es un
sistema de gestin de base de datos relacional, multiusuario con ms de seis millones
de instalaciones. MySQL es muy utilizado en aplicaciones web como drupal o phpBB,
en plataformas (Linux/Windows Apache-MySQL-php/perl/python) y por herramientas
de seguimiento de errores como Bugzilla. Su popularidad como aplicacin web est
muy ligada a PHP, que a menudo aparece en combinacin con MySQL. [3]
Para facilitarnos el trabajo de desarrollo de sistemas de informacin, existen varios
entornos de desarrollo, uno de los mas importante es NetBeans, el cual es una
plataforma para el desarrollo de aplicaciones de escritorio usando el lenguaje J ava,
adems brinda facilidades para la comunicacin de las bases de datos, especialmente
MYSQL. En este entorno de desarrollo integrado (IDE) se pueden desarrollar tambin
otros lenguajes de programacin como C y C++mediante los cuales se pueden crear
aplicaciones grficas, por ejemplo usando libreras como wxWidgets.[4]
Un sistemas de informacin que no permita exportar resultados para imprimir, sera un
sistemas de informacin de muy poca utilidad, es por eso que existen muchos re-
porteadores entre los cuales encontramos a IReport que es un constructor / diseador
de informes visual, poderoso, intuitivo y fcil de usar para J asperReports escrito en
J ava. Este instrumento permite que los usuarios corrijan visualmente informes
complejos con cartas, imgenes, subinformes, y mucho ms. iReport est adems
integrado con J FreeChart, una de la biblioteca grficas OpenSource ms difundida para
J ava. Los datos para imprimir pueden ser recuperados por varios caminos incluso
mltiples uniones J DBC, TableModels, J avaBeans, XML, entre otros. [5]



2
Origen de MYSQL
http://books.google.com.co/books?id=cNTIoRAtE1kC&pg=PT1&dq=que+es+el+lenguaj
e+mysql&hl=es&sa=X&ei=fVHfUeCPD7Gn4AOu6YHYBQ&ved=0CDMQ6AEwAQ


Para el desarrollo exitoso de este mdulo es importante el ritmo y secuenciacin del
trabajo auto dirigido, de tal forma que puedas trabajarlo en casa y posteriormente
socializarlo en clases con tu profesor, pero para ello debes tener disponibilidad de
tiempo, alto grado de responsabilidad e iniciativa con cada una de las actividades
programadas.
Tambin cabe destacar, que la informacin consignada en el mdulo puede ser
ampliada para que usted enriquezca los conceptos que se desarrollan a lo largo del
mdulo, por lo tanto se le recomienda que consulten las citas referenciadas en la
bibliografa.
Tenga presente las siguientes anotaciones:
Considere el mdulo como una herramienta que le permitir fortalecer sus
conocimientos sobre la POO y desarrollo de sistemas de informacin.
Lea y estudie cada uno de los temas con anticipacin a la sesin con el tutor, para
que llegue con inquietudes y se genere la discusin a partir de estas.
La constitucin de grupos de estudio, que se han denominado CIPAS, es
altamente recomendable, dado que no todos asimilan de la misma manera, por tal
razn es conveniente concretar con otros compaeros algunos puntos clave de las
lecturas y anlisis de la informacin del mdulo. Adems es importante analizar
cada uno de los puntos de vistas de los integrantes del CIPA, el cual nos ayudar
a afianzar y enriquecer nuestra propia comprensin sobre los temas desarrollados
en el mdulo.
Complemente sus actividades con las consultas sugeridas en documentos, sitios
web, que fortalezcan el estudio de los temas propuestos en el mdulo.


FORMAS DE ABORDAR EL CONTENIDO DEL MODULO
Importante: En este modulo se utilizar el diagrama entidad relacin del observador del alumno, el cual
fue desarrollado en el modulo de base de datos.











1. CONCEPTOS BASICOS DE PROGRAMACION ORIENTADA A OBJETOS
(POO)










UNIDAD 1
1 Conceptualizacin de la POO.
1.1.1 Definiciones
1.1.2 Importancia de la POO.
1.1.3 Diferencia con programacin estructurada.
1.1.4 Lenguajes de programacin
1.1.5 qu es un objeto?
1.2 Caractersticas de la POO.
1.2.1 Abstraccin.
1.2.2 Clases y sus componentes.
1.2.3 Mensaje.
1.2.4 Polimorfismo.
1.2.5 Herencia.
1.2.6 Encapsulacin.
1.3 Modificadores de acceso
1.4 Los mtodos constructores, get y set de una clase.
El mtodo constructor de una clase
1.5 Diagramas de clases
1.6 El lenguaje java
1.6.1 La comunidad de java
1.6.2 Netbeans como IDE ( Integrated Development
Environment) de desarrollo
1.6.3 Variables y tipos de datos
1.6.4 Estructuras de control
1.6.5 Concepto de libreras.
1.6.6 Definicin de una clase
1.6.7 Definicin de un objeto de programacin
1.6.8 Objeto del mundo real. Vs objeto de
programacin

PRESENTACIN
En esta unidad trataremos todo el concepto de programacin orientada a objetos POO,
sus caractersticas y las consideraciones para trabajar en el lenguaje java. Adems se
expondr la diferencia entre programacin estructura que han trabajado previamente en
el modulo de algoritmos con la POO.

PLANTEAMIENTO DEL PROBLEMA
Cmo la POO puede fundamentar el conocimiento de los licenciados para que
desarrollen los cimientos en la creacin de los sistemas de informacin?

COMPETENCIAS ESPECFICAS
Identifica la importancia de la POO en el desarrollo de software.
Interpreta y maneja las caractersticas de la POO
Creacin e instanciacin de clases a partir de los objetos del mundo real.

DINMICA PARA CONSTRUIR EL CONOCIMIENTOS
ACTIVIDAD PREVIA: Trabajo independiente
Realiza un resumen sobre el tema POO
Investiga la diferencia entre programacin estructurada y POO.





CONCEPTOS BASICOS DE PROGRAMACION ORIENTADA A OBJETOS (POO)
1.1 CONCEPTUALIZACION DE LA POO.
1.1.1 Definiciones
La Programacin Orientada a Objetos POO (OOP Object-oriented
programming en ingls).
Segn Luis Joyanes Aguilar (Programacin orientada a objetos 1996):
La orientacin a objetos puede describirse como el conjunto de disciplinas
que desarrollan y modernizan sistemas de informacin que facilita la
construccin de sistemas complejos a partir de componentes proporciona
conceptos y herramientas con las cuales se modela y representa el mundo real
tan fielmente como sea posible.

La Wikipedia lo defino como un paradigma de programacin que usa los objetos
en sus interacciones, para disear aplicaciones y programas informticos.

En otras palabras es un paradigma de programacin que permite la abstraccin
del mundo real mediante la utilizacin de objetos para el diseo de sistemas de
informacin, es una tcnica que permite modelar el mundo que nos rodea y las
relaciones existentes entre los mismos desde nuestro punto de vista para
convertirlas en lenguaje de mquina.

1.1.2 Importancia de la POO
Algunas de las causas por la cual la POO esta tan difundida a nivel mundial, y
es la base de los actuales sistemas de informacin son las siguientes:
Mantenibilidad: Debido a la sencillez para abstraer el problema, los programas
orientados a objetos son ms sencillos de leer y comprender, debido a que
permiten ocultar detalles de implementacin dejando visibles slo aquellos
detalles ms relevantes. [11]
Reusabilidad: Los mecanismos de encapsulacin de la POO soportan un alto
grado de reutilizacin de cdigo, que se incrementa por sus mecanismos de
herencia [10]
Modificabilidad. La facilidad de aadir, suprimir o modificar nuevos objetos
permiten hacer modificaciones de una forma muy sencilla.
Escalabilidad: le permite a un sistema un crecimiento adaptable manteniendo la
calidad y la facilidad de trabajo continuo y fluido.
Facilita el trabajo en equipo.
La abstraccin de los objetos del mundo real permite crear sistemas de
informacin complejos.

1.1.3 Diferencia con programacin estructurada
Segn Francisco A. Martnez Gil, Gregorio Martn Quetgl. explican que la
programacin estructurada fue histricamente la primera manera universalmente
aceptada de organizar un programa que cumpliera con los objetivos de ser fcil y
comprender leyendo el propio cdigo fcil de depurar(localizar errores del
programa) ser fcil de mantener (ampliar con nuevas especificaciones o
modificar ya existentes) permitir trabajo en equipo sobre un mismo
programa; [12] sin embargo, con el avance de la tecnologa y los sistemas
informticos la implantacin de esta tcnica de programacin no presentaba una
solucin eficiente ni eficaz para resolver los requerimientos de los sistemas de
informacin actuales. La programacin estructurada presenta algunas
dificultades como:
Distinta abstraccin del mundo. Se centra en el comportamiento, normalmente
representado por verbos, mientras que nuestra mente se centra en los seres, a
los que, normalmente, identificamos con sustantivos.
Dificultad en modificacin y actualizacin. Los programas suelen tener datos
compartidos por varios subprogramas, esto puede provocar que cualquier ligera
modificacin en un mdulo afecte indirectamente al resto.
Dificultad en mantenimiento. Es complicado encontrar todos los errores en
grandes aplicaciones, lo que origina que muchos no aparezcan hasta estar la
aplicacin en explotacin. [15]
Al contrario que la programacin estructurada que enfatiza en los algoritmos, la
POO enfatiza en los datos. En lugar de intentar ajustar un problema al enfoque
procedimental de un lenguaje, POO intenta ajustar el lenguaje al problema. La
idea es disear formatos de datos que se correspondan con las caractersticas
esenciales de un problema. Los lenguajes orientados combinan en una nica
unidad o mdulo, tanto los datos como las funciones que operan sobre esos
datos. Tal unidad se llama objeto. Si se desea modificar los datos de un objeto,
hay que realizarlo mediante las funciones miembros del objeto. Cuando se trata
de resolver un problema con orientacin a objetos, dicho problema no se
descompone en funciones como en programacin estructurada tradicional, sino
en objetos. El pensar en trminos de objetos tiene una gran ventaja debido a que
se asocian los objetos del problema a los objetos del mundo real. [13]

1.1.4 Lenguajes de programacin
Un lenguaje de programacin es un conjunto de smbolos y reglas sintcticas y
semnticas que definen su estructura y el significado de sus elementos y
expresiones, es utilizado para controlar el comportamiento fsico y lgico de una
mquina. [14]. Es decir; es el idioma mediante el cual podemos escribir cdigos
de una forma entendible para el humano y traducibles para la mquina.

1.1.5 Qu es un objeto?
Un objeto es un paquete que contiene datos y el cdigo de forma de subrutinas
que operan sobre los datos del propio objeto [16].

Eugenia Bahit, en su libro sintctico gramatical de POO, explica de forma
sencilla qu es un objeto?, el cual es cualquier cosa que nos rodea, una
mesa, una pared, un carro usted mismo es un objeto. Cuando se piensa en
objetos todos los sustantivos son objetos. [17].

1.2 CARACTERISTICAS DE LA POO
Cuando vemos un objeto de la vida diaria notamos sus cualidades, es una
descripcin de la manera como se puede identificar un objeto. Por ejemplo, si
observamos una silla notamos que el objeto es y luego describimos las
caractersticas de la silla, la silla es marrn y marrn es un color, la silla es
grande y grande es un tamao, la silla es bonita y bonita es un aspecto, por lo
tanto tenemos:
La silla es de color marrn.
La silla es de tamao grande.
La silla es de aspecto bonita.
Adems de esto, los objetos tienen la capacidad de realizar tareas, es decir, lo
que ellos pueden hacer, sus comportamientos. Retomando el ejemplo de la silla
nos debemos preguntar Qu se puede hacer con la silla? Entonces la silla se
puede desarmar, la silla se puede reclinar.

1.2.1 Abstraccin
J ojanes (1996) define la abstraccin como La propiedad de los objetos que
consiste en tener en cuenta slo los aspectos ms importantes desde un punto
de vista determinado y no tener en cuenta los restantes aspectos que no son
significativos. Durante el proceso de abstraccin es cuando se decide qu
caractersticas y comportamientos debe tener el modelo. Un medio de reducir la
complejidad es la abstraccin. Las caractersticas y los procesos se reducen a
las propiedades esenciales, dejando de lado los dems detalles no sustanciales.
De este modo, las caractersticas complejas se hacen ms manejables. [10]

La abstraccin nos sirve para poder pasar un objeto del plano material al plano
mental, es decir, que debemos tomar un objeto y aislarlo de los dems y
analizarlo para determinar solamente sus caractersticas relevantes. Con qu
motivo se hace esto? Aunque todo un sistema funcione como uno podemos
desarmarlo en partes ms pequeas, para poder identificarlo ms fcil y destacar
sus caractersticas bsicas.

1.2.2 Clases y sus componentes.
En la programacin orientada a objetos, una clase es una construccin que se
utiliza como un modelo (o plantilla) para crear objetos de ese tipo. El modelo
describe el estado y contiene el comportamiento que todos los objetos creados a
partir de esa clase tendrn. Un objeto creado a partir de una determinada clase
se denomina una instancia de esa clase. [18]

Los componentes de una clase son:
Mtodos (comportamientos): representan acciones propias que puede
realizar el objeto. Cada mtodo debe tener una y solo una responsabilidad.
Atributos (Caractersticas o propiedades): Son los datos que estn
contenidos dentro de un objeto, los cuales pueden contener tipos primitivos
tales como enteros, flotantes, caracteres, entre otros, tambin pueden
contener estructuras complejas como pilas, conjuntos, listas, arrays o
incluso de estructuras recursivas de alguno o todos de sus elementos.

1.2.3 Mensaje
Un mensaje es una peticin de un objeto a otro objeto al que le solicita ejecutar
uno de sus mtodos. Por convenio, el objeto que enva la peticin se denomina
emisor y el objeto que recibe la peticin se denomina receptor.


1.2.4 Polimorfismo
Polimorfismo quiere decir "un objeto y muchas formas". Esta propiedad permite
que un objeto presente diferentes comportamientos en funcin del contexto en
que se encuentre. Por ejemplo, un mtodo puede presentar diferentes
implementaciones en funcin de los argumentos que recibe, recibir diferentes
nmeros de parmetros para realizar una misma operacin, y realizar diferentes
acciones dependiendo del nivel de abstraccin en que sea llamado. [18]

1.2.5 Herencia
La herencia supone una clase base y una jerarqua de clases que contiene las
clases derivadas de la clase base. Las clases derivadas pueden heredar el
cdigo y los datos de su clase base, aadiendo su propio cdigo especial y datos
a ellas, incluso cambiar aquellos elementos de la clase base que necesita sean
diferente.

Herencia Simple
En esta jerarqua cada clase tiene como mximo una sola superclase. La
herencia simple permite que una clase herede las propiedades de su superclase
en una cadena jerrquica.

Herencia Mltiple
Una herencia mltiple o retcula consta de clases, cada una de las cuales puede
tener una o ms superclases inmediatas. Una herencia mltiple es aquella en la
que cada clase puede heredar mtodos y variables de cualquier nmero de
superclases.

1.2.6 Encapsulacin
El encapsulamiento permite a los objetos elegir qu informacin es publicada y
qu informacin es ocultada al resto de los objetos. Para ello los objetos suelen
presentar sus mtodos como interfaces pblicas y sus atributos como datos
privados e inaccesibles desde otros objetos.
Para permitir que otros objetos consulten o modifiquen los atributos de los
objetos, las clases suelen presentar mtodos de acceso. De esta manera el
acceso a los datos de los objetos es controlado por el programador, evitando
efectos laterales no deseados.
Con el encapsulado de los datos se consigue que las personas que utilicen un
objeto slo tengan que comprender su interfaz, olvidndose de cmo est
implementada y en definitiva reduciendo la complejidad de utilizacin.[22]

1.3 MODIFICADORES DE ACCESO
Los modificadores de acceso permiten al diseador de una clase determinar
quin accede a los datos y mtodos miembros de una clase los modificadores
posibles son los siguientes:
Pblicas (public): Las clases declaradas como pblicas son accesibles
desde cualquier otra clase, es decir cualquier otra clase puede crear
objetos de esta clase. Al igual que los mtodos declarados pblicos
pueden usarse desde cualquier otra clase..
Privadas (pri vate): Slo se puede acceder al elemento desde mtodos
de la clase, o slo puede invocarse el mtodo desde otro mtodo de la
misma clase.
Protegidos (protected): Este es una combinacin de los accesos que
proporcionan los modificadores public y private, protected proporciona
acceso pblico para las clases derivadas y acceso privado (prohibido)
para el resto de clases.
Sin modificador: Se puede acceder al elemento desde cualquier clase
del paquete donde se define la clase.

Generalmente las clases son pblicas, los atributos son privados y los mtodos son
pblicos.

1.4 LOS METODOS CONSTRUCTORES, GET Y SET DE UNA CLASE
El mtodo constructor de una clase
El constructor es un mtodo especial de una clase. El objetivo fundamental del
constructor es inicializar los atributos del objeto que creamos. Las caractersticas
de un mtodo constructor son las siguientes:
El constructor es el primer mtodo que se ejecuta cuando se crea un
objeto.
El constructor se llama automticamente cuando instanciamos el objeto.
Luego de que se ejecuta el constructor no puede ser llamado
nuevamente.
Un constructor no puede retornar dato.
Un constructor puede recibir parmetros que se utilizan normalmente para
inicializar atributos. [20]
El constructor es un mtodo opcional, no es obligacin colocarlo y
depende del diseo de la clase y la tarea que se quiera realizar.

Mtodo set
El mtodo set (establecer, colocar) es un mtodo que se utiliza para asignarle
valores a los atributos de la clase con el modificador de acceso privado.

Mtodo get
El mtodo get (obtener) es un mtodo que se utiliza para obtener valores los
atributos de la clase con el modificador de acceso privado.

1.5 DIAGRAMAS DE CLASES
Un diagrama de clases es un tipo de diagrama esttico que describe la estructura
de un sistema mostrando sus clases, atributos y las relaciones entre ellos. Los
diagramas de clases son utilizados durante el proceso de anlisis y diseo de los
sistemas, donde se crea el diseo conceptual de la informacin que se manejar
en el sistema, y los componentes que se encargaran del funcionamiento y la
relacin entre uno y otro.[21].

El propsito de este diagrama es el de representar los objetos fundamentales del
sistema, es decir, los que percibe el usuario y con los que espera tratar para
completar su tarea en vez de objetos del sistema o de un modelo de programacin.

La clase se representa por un rectngulo con tres divisiones en las cuales en la
parte superior se escribe el nombre de la clase, en el medio los atributos con su
modificador de acceso y los mtodos se escribes en la parte inferior







El proceso de abstraccin para crear un diagrama de clases es similar en cuanto
al nombre y los atributos al mismo que se usa para crear un modelo entidad
relacin (visto en el modulo de bases de datos).

1.6 EL LENGUAJE JAVA
J ava es un lenguaje de programacin con el que podemos realizar cualquier tipo
de programa. En la actualidad java es el primer lenguaje de programacin
orientado a objetos ms usado y el segundo a nivel general segn el ndice tiobe
[23]. Est desarrollado por la compaa Sun Microsystems con gran dedicacin y
siempre enfocado a cubrir las necesidades tecnolgicas ms punteras.

Una de las principales caractersticas por las que J ava se ha hecho muy famoso es
que es un lenguaje independiente de la plataforma. Eso quiere decir que si
hacemos un programa en J ava podr funcionar en cualquier ordenador del
mercado. Es una ventaja significativa para los desarrolladores de software, pues
antes tenan que hacer un programa para cada sistema operativo, por ejemplo
Windows, Linux, Apple, entre otros. Esto lo consigue porque se ha creado una
Mquina de J ava para cada sistema que hace de puente entre el sistema operativo
y el programa de J ava y posibilita que este ltimo se entienda perfectamente. [24]

1.6.1 La comunidad de JAVA
Una de las ventajas que presenta J AVA es su gran comunidad en espaol y otros
idiomas, esto lo ha hecho un lenguaje de programacin que se ha mantenido en la
ltima dcada como un lenguaje de alta relevancia e importancia, con java puedes
encontrar mucha informacin posteada en foros y paginas dedicadas al lenguaje,
difcil no encontrar una respuesta buscndola en la web porque lo ms probable es
que a otra persona en cualquier lugar del mundo le ha sucedido lo mismo y lo ha
solucionado, y esta informacin es totalmente gratis y accesible para cualquier
persona, adems de esto encuentras muchos proyectos , libreras, ejemplos y
soluciones realizadas por otras personas las cuales solo necesitan importarlas a tu
proyecto y no tienes que pensar de nuevo en cmo solucionarlo.

1.6.2 Netbeans como IDE de desarrollo
Netbeans es un entorno de desarrollo que nos ayuda a crear nuestros sistemas
de informacin y nos permite utilizar todo el concepto de POO a travs del
lenguaje java.
Hay que tener en cuenta netbeans es un programa como cualquier otro que con
los aos lo van actualizando, La versin que utilizaremos para explicar los
contenidos ser la versin actual del momento que es la versin 7.3.1
Como instalar netbeans.
Antes de instalar netbeans lo primero que debemos hacer es instalar la maquina
virtual de java (J DK), podemos bajar los instaladores en
https://netbeans.org/downloads/index.html o en cualquier pagina web utilizando
los buscadores, adems en este link en [Video 2] pueden encontrar un video
tutorial para instalarlo.

Entrada a netbeans
Una vez instalado el programa lo abrimos con doble clic al icono que quedo
en escritorio o en programas y aparecer una interfaz como la que sigue.


Ejemplo de creacin de un proyecto en netbeans.
Para la creacin de clases en netbeans se hace clic en File->New Project

Donde aparecer una ventana donde escogeremos el tipo de aplicacin para
nuestras aplicaciones utilizaremos J ava Application.

Hacemos clic en Next y en la siguiente ventana podremos darle un nombre a nuestro
nuevo proyecto, ejemplo MiPrimerProyecto, adems podremos escoger donde
guardarlo a travs del botn Browse.

Por ltimo hacemos clic en Finish y aparecer la siguiente ventana.


1.6.3 Variables y tipos de datos
byte: El tipo de dato byte es un entero de 8 bits complemento a dos. Su
valor mnimo es -128 y el mximo 127 (inclusive). El tipo de datos byte se
puede utilizar para ahorrar memoria en grandes arrays, donde el ahorro de
memoria realmente importa. Tambin se pueden utilizar en lugar de int
donde sus lmites ayudan a aclarar el cdigo, el hecho de que el rango de
una variable es limitado puede servir como una forma de documentacin.
short: El tipo de dato short es un entero de 16 bits complemento a dos. Su
valor mnimo es -32,768 y el mximo 32,767 (inclusive). Se aplican las
mismas directrices que con byte: puede utilizar short para ahorrar memoria
en grandes arrays, en situaciones en las que el ahorro realmente importa.
int: El tipo de dato int es un entero de 32 bits complemento a dos. Su valor
mnimo es -2,147,483,648 y el mximo 2,147,483,647 (inclusive).
Generalmente este tipo es la eleccin predeterminada para valores enteros
a no ser que haya una razn (como las mencionadas anteriormente) para
elegir otro. Este tipo de dato normalmente ser lo suficiente grande para los
nmeros que su programa vaya a utilizar pero si necesita un rango ms
amplio, utilice long.
long: El tipo de dato long es un entero de 64 bits complemento a dos. Su
valor mnimo es -9,223,372,036,854,775,808 y el mximo
9,223,372,036,854,775,807 (inclusive). Utilice este tipo de dato cuando
necesite un rango de valores ms amplio que el proporcionado por int.
Float: El tipo de dato float es un dato en coma flotante IEEE 754 de 32 bits y
precisin simple. Su rango de valores est fuera del mbito de este tema,
pero se detalla en la seccin 4.2.3 de la Especificacin del lenguaje J ava. Al
igual que con byte y short, se recomienda usar un float (en vez de un
double) si necesita ahorrar memoria en grandes array de nmeros en coma
flotante. Este tipo de dato nunca debera ser usado para valores precisos
como, por ejemplo, divisas. Para esto debera usarla clase
java.math.BigDecimal. Nmeros y cadenas trata BigDecimal y otras clases
tiles proporcionadas por la plataforma J ava.
double: El tipo de dato double es un dato en coma flotante IEEE 754 de 64
bits y precisin doble. Su rango de valores est fuera del mbito de este
tema, pero se detalla en la seccin 4.2.3 de la Especificacin del lenguaje
J ava. Normalmente este tipo de dato es la eleccin predeterminada para
valores decimales. Como ya se ha mencionado, este tipo de dato no se
debera utilizar para valores precisos como, por ejemplo, divisas.
boolean: El tipo de dato boolean solamente tiene dos valores posibles: true
(verdadero) y false (falso). Utilice este tipo de datos como conmutadores
para la evaluacin de condiciones verdadero/falso. Este tipo de dato
representa un bit de informacin, pero su tamao es algo que no est
definido con precisin.
char: El tipo de dato char es un solo carcter Unicode de 16 bits.[ 25]

1.6.4 Estructura de control
En lenguajes de programacin, las estructuras de control permiten modificar el
flujo de ejecucin de las instrucciones de un programa.


Estructura if (Si) condicional simple
El if es la estructura de control ms sencilla en la cual se tiene que cumplir con
una condicin para poder ejecutar el cdigo y se construye de la siguiente forma.
If(condicin booleana){
Instrucciones
}

La condicin booleana tiene que ser verdadera para que pueda ejecutar el
cdigo que est dentro.
If (es de da){
Sale el sol
}

En este caso la condicin se cumple cuando es de da entonces como es de da
tiene que salir el sol
En java sera algo como.

Estructura if else (Si - Sino) condicional doble
Con este tipo de estructura se busca que en caso de no cumplirse la condicin
en el if contine hasta el else de la siguiente forma.
If(condicin booleana){
Instrucciones
}else{
Otras Instrucciones
}
Entonces lgicamente sera algo como.
If(es de da){
Sale el sol
}else{
Sale la luna
}
En este ejemplo quiere decir que la condicin del if no se cumpli por lo tanto no
ejecuta la instruccin que se encuentra en el, por lo tanto continua hacia el else.
El ejemplo en java seria.

Estructuras if... else anidadas condicional mltiple.
Se obtiene anidando sentencias if... else. Permite construir estructuras de
seleccin ms complejas.
If(la hora es menor que las 12 m y mayor que 6 am){
Es de maana
}else if(la hora es mayor que 12 y menor que 6){
Es de tarde
}else{
Es de noche
}


Estructuras switch
Este tipo de estructura evala una expresin y de acuerdo a eso lo remitir a un
caso u otro.

Switch(expression){
Case 1:
Instrucciones 1.
break;
Case 2:
Instrucciones 2.
break;
Case 3:
Instrucciones 3.
break;
default :
Instrucciones default.
break;
}

Estructuras de iteracin.
Este tipo de estructuras nos permiten ejecutar instrucciones un cierto nmero de veces
de acuerdo a las condiciones de cada estructura.
Estructura for.
La estructura for permite ejecutar un bloque de instrucciones un nmero determinado
de veces mientras se cumpla una condicin.
for(inicializacin;condicin;incremento){
Instrucciones
}
La inicializacin es el valor inicial en el cual comenzara el ciclo, el final del bucle lo
indica la condicin, y el incremente es el valor en la cual se aumentar la variable de
inicializacin cada vez que se repita el ciclo



Estructura While.
Esta estructura ejecutara un ciclo hasta que la condicin del ciclo sea no se cumpla.
while(expresin boleana){
instrucciones
}

En este caso imprimir del 0 hasta el 19.
Estructura do-while.
Esta estructura ejecuta primero la instruccin y luego evala la condicin.

En este caso imprimir del 0 hasta el 29.
1.6.5 Concepto de libreras.
Una librera es una coleccin o conjunto de subprogramas usados para
desarrollar software. En general, las libreras no son ejecutables, pero s pueden
ser usadas por ejecutables que las necesitan para poder funcionar
correctamente.
Las libreras son muy utilizadas para extender las funcionalidades que queremos
tener en el programa que estamos desarrollando, que de forma nativa no se
pueden ser hacer. Por ejemplo si queremos conectarnos con una base de datos
con la mera declaracin de la clase no podemos hacerlo debemos incluir en
nuestro proyecto y nuestra clase la instancia de la librera solicitada.
La forma de incluir una librera en java es de la siguiente forma.

Esta librera nos sirve para manipular las fechas.

1.6.6 Definicin de una clase
Las clases en java se declaran de la siguiente forma.

Mtodos

Realicemos un ejemplo sencillo. Se necesita construir un programa que dado dos
nmeros los sume e imprima el resultado.
Cree un proyecto descrito anteriormente en la seccin Netbeans como IDE de
desarrollo y llmelo Suma y codifique el resto.

Al ejecutar el programa (clic derecho y escogemos la opcin run file) deber
mostrar: La suma de 2 y 5 es: 7

1.6.7 Definicin de un objeto de programacin
Los objetos en programacin son instancias de las clases, es decir se crean a
partir de una clase. Los objetos de las clases se crean a partir de la necesidad
que existe de la reutilizacin, entre otras cosas, de algo que ya se cre para no
volver a realizarlo y disminuir la redundancia de nuestro cdigo. Si queremos
crear un objeto en java tomando en cuenta la clase anterior de Suma debemos
hacerlo de la siguiente forma.


Donde Suma me indica la clase a la cual voy a crearle un objeto s me indica
el nombre del objeto que puede ser nombrado de cualquier forma. La
instanciacin del objeto ocurre solo cuando se escribe el new en ese momento
es que se instancia el objeto si no tengo el new y tenemos algo como Suma =
null; en este caso creo el objeto de Suma pero no est instanciado es decir no
puedo hacer uso de ningn mtodo ni atributo de la clase Suma. Solo cuando se
escribe el new es cuando podemos hacer uso de todos los mtodos y atributos
de la clase dependiendo del nivel de encapsulacin, es decir los mtodos y
atributos pblicos que contenga la clase y son clases heredadas de los
protegidos.

1.6.8 Objeto del mundo real. Vs objeto de programacin

Ya indicamos que un objeto en el mundo real es cualquier cosa, en
programacin realizamos las clases a partir de las caractersticas de esos
objetos del mundo real (abstraccin), entonces los objetos en programacin los
creamos a partir de las clases. Los objetos entonces son variables de tipo clases.

1.6.9 Ejemplo del uso de otras clases:
Paso1: agregue un archivo new file tipo clase de java( java class) y
llamelo Operacion (sin tildes).

Paso2: Programe la clase operacin as:

La clase operacin contiene mtodos pblicos que reciben parmetros y
retornan un valor de acuerdo al mtodo que se quiera utilizar.
Paso3: repita el paso 1 y cree otra clase llamada Realizaoperacion y
codifiquela.

La forma en la que se llaman a los mtodos de la clase Operacin es a travs
del objeto que creamos op seguido de punto (.) y el mtodo que se quiere
utilizar.
Paso4: Repita el paso 1 y cree otra clase llamada EjecutarOperacion

Paso5: Ejecute esta clase y observara los resultados. (Clic derecho sobre
el cdigo y escogemos la opcin run file)


RESUMEN DE LA UNIDAD
En esta unidad se definen los conceptos de la Programacin orientada a objetos, la
importancia en la actualidad de esta disciplina de programacin y sus principales
caractersticas, as como las diferencias que existen con el tipo de programacin que la
precede y algunos de los motivos que llevaron a los ingenieros a replantearse un nuevo
paradigma de programacin que pudiera cumplir con los requerimientos que se estaban
requiriendo en el momento. Tambin en esta unidad se explica de una forma sencilla
los conceptos de la POO, con ejemplos basados en el entorno para dar una idea ms
clara de los diferentes tipos de objetos. Se centrara en el lenguaje de programacin
J AVA y se da una breve explicacin de la sintaxis, variables, mtodos, clases y objetos
en programacin.

AUTOEVALUACION
Resuelva el siguiente cuestionario escogiendo solo la opcin correcta
1. La clase puede tener mximo
a- 1 constructor
b- 2 constructores
c- 3 constructores
d- No tiene lmite

2. La clase debe tener mnimo
a- 1 constructor
b- 2 constructores
c- 3 constructores
d- no es necesario un constructor

3. Existe una clase venta con los
siguientes atributos (fecha, cliente, IVA,
valortotal, estado) si en la clase solo se puede
modificar la fecha y el cliente. Cuantos mtodos
set deben existir en la clase
a. 0 b.1 c. 2
d. 3 e. 4 f. 5

4. Si la clase de venta permite usar todos
atributos deben existir cuantos mtodos get
a. 0 b.1 c. 2
d. 3 e. 4 f. 5

5. una clase en poo es:
a- Un objeto de poo
b- Abstraccin de un objeto del mundo real
c- Un objeto del mundo real.
d- abstraccin de un objeto poo

6. Como se define un objeto de la clase
ventacontado en java:
a- ventacontado x = new ventacontado ( )
b- ventacontado x =new ventacontado;
c- ventacontado x =new ventacontado( );
d- ventacontado x =new ventacontado;

7. Un mensaje se hace a travs de:
a- una clase
b- un objeto
c- un atributo
d- un mtodo

8. Los atributos representan:
a- Los comportamientos
b- Las caractersticas
c- Los constructores
d- Los modificadores

9. Un mensaje es necesario cuando:
a- Cuando en una clase se necesita de otra
clase
b- Cuando en una clase se necesita de la
misma clase
c- Cuando en un objeto se necesita de otra
clase
d- Cuando una clase se necesita as
misma

10. Cuando se hace una abstraccin para
crear una clase se debe tener en cuenta que:
a- una clase siempre es la misma
b- la lgica del negocio
c- las clases siempre deben ser pblicas
d- las posibles clases que vayas a utilizar
11. con una clase se puede construir
a- 20 objetos b- 2000 objetos
c- 30 objetos d- infinitos objetos

12. un objeto en POO es
a- Un vector b- una variable
c- algoritmo d- un mtodo.

13. los atributos deben ser
a- privados
b- una variable
c- pblicos
d- pueden ser de varios tipos

14. los mtodos deben ser generalmente
a- privados
b- pblicos
c- protegido
d- pueden ser de un tipo

15. si todo los mtodos de una clase padre
son privados implica que todas las clases de
hijas
a- no tienen acceso
b- tienen acceso solo a los mtodos
constructores.
c- pueden usar los mtodos de las clases
hermanas
d- tienen acceso total

16. Cual de las siguientes opciones es la
causa principal para que la POO este tan
difundida a nivel mundial.
a- Mantenibilidad
b- Privado
c- Publico
d- Protegido

17. Cual de las siguientes opciones hace
parte de una de las causas de la POO en la cual
se permite hacer modificaciones de una forma
sencilla.
a- Herencia
b- Clase
c- Mantenibilidad
d- Modificabilidad

18. seala cual de las siguientes opciones
hace parte de la importancia de la POO.
a- Herencia
b- Mensaje
c- Reusabilidad
d- Todas las anteriores























DISEO DE INTERFACES GRAFICAS CON LOS OBJETOS GRAFICOS DE LA
LIBRERA SWING Y VALIDACION DE INFORMACION.

















UNIDAD 2
2.1 Consideracin en el diseo de una GUI:
2.2 Contenedores y componentes grficos (Objetos
grficos)
2.2.1 Formularios: Clase jFrame
2.2.2 Cajas de textos: Clase jTextField.
2.2.3 Etiquetas: Clase jLabel.
2.2.4 Listas despegables: Clase jComboBox
2.2.5 reas de textos: Clase jTextArea.
2.2.6 Botones de opciones: Clase jRadioButton
2.2.7 Botones: Clase jButton
2.2.8 Mtodos importantes en los componentes
2.2.9 Ms componentes, ejemplo con Netbeans
2.2.10 El mtodo initComponents
2.2.11 Eventos
2.3 Creacin de clase de validacin.
2.4 Validacin de los objetos grficos de un
formulario utilizando la clase de validacin creada en la
seccin anterior.


PRESENTACIN
En la presente unidad estudiaremos el tema de diseo de interfaz grafica de
usuario (GUI), la cual consiste en la manera como el usuario final
3
va a interactuar
con el sistema de informacin a travs de los diferentes componentes grficos
que ya existen tales como campos de textos, listas desplegables, reas de textos,
casilla de verificacin, entre otros. Todos estos objetos grficos son clases ya
existentes, las cuales tienen sus propios atributos y mtodos que estudiaremos
para poder utilizarlos en cualquier GUI, y podremos utilizar todas las ventajas
POO.
Generalmente las GUI sirven para comunicacin con la base de datos
(insercin, modificacin, eliminacin y bsquedas de informacin), estas bases de
datos deben recibir informacin correcta, con lo cual es muy importante que
despus de estar creada la GUI se valide la informacin que el usuario final va a
ingresar a ella, porque de esta informacin dependern los informes solicitados.
Si la informacin no es correcta qu esperar de los informes?

PLANTEAMIENTO DEL PROBLEMA:
Cmo se puede disear y validar interfaces graficas de usuarios utilizando las
clases la POO a la hora del desarrollo de los sistemas de informacin?

COMPETENCIAS ESPECFICAS
Disear una interfaz grafica de usuario utilizando las clases la POO.
Validar la informacin digitada por el usuario final utilizando la POO.

DINMICA PARA CONSTRUIR EL CONOCIMIENTOS
ACTIVIDAD PREVIA: Trabajo independiente

3
Definicin de Usuario final http://es.wikipedia.org/wiki/Usuario_final
Antes de comenzar la lectura de la unidad responda de manera escrita lo
que usted entiende por:
o Interfaz grafica de usuario
o Contenedores y componentes de una interfaz grafica de usuario.
o Validacin de interfaces de usuarios (generalmente lo encuentran
como formulario)

ACTIVIDAD PREVIA: Trabajo en grupo
Reunidos en sus grupos confronte sus saberes previos con los de sus
compaeros y tome de referencia la GUI de creacin de cuenta en Hotmail
4

e identifique y cuente los contendores, adems muestre con imgenes las
validaciones que en ella aparecen.

Recomendaciones generales:
Lea detenidamente la unidad II.
Una vez leda la unidad, confronte sus saberes previos con lo aprendido en
la unidad.
Socializar en el grupo los diferentes temas tratados en la Unidad II.
Desarrollar las actividades propuestas en cada apartado.


4
Creacin de cuenta Hotmail
https://signup.live.com/signup.aspx?wa=wsignin1.0&rpsnv=11&ct=1373578119&rver=6.1.6206.0&wp=MBI
&wreply=http%3a%2f%2fmail.live.com%2fdefault.aspx&id=64855&cbcxt=mai&snsc=1&bk=1373578121&uif
lavor=web&mkt=ES-ES&lc=3082&lic=1

2. DISEO DE INTERFACES GRAFICAS DE USUARIOS (GUI) CON LOS
OBJETOS GRAFICOS DE LA LIBRERA SWING Y VALIDACION DE
INFORMACION.

Algunas definiciones de interfaz grafica de usuario:
En [30] la definen como: La interfaz grfica de usuario, conocida tambin como
GUI (del ingls graphical user interface) es un programa informtico que acta de
interfaz de usuario, utilizando un conjunto de imgenes y objetos grficos para
representar la informacin y acciones disponibles en la interfaz. Su principal uso,
consiste en proporcionar un entorno visual sencillo para permitir la comunicacin
con el sistema operativo de una mquina o computador

En [31] la definen como: La interfaz de usuario es la parte del programa que
permite al usuario interaccionar con l

En [32] la definen como: es un mecanismo que posibilita la comunicacin entre la
persona (el usuario) y el computador (el sistema informtico en general)

De las definiciones anteriores vemos que las GUI son las que nos ayuda a utilizar
los computadores y por ende todo lo que ellos posee a nivel de hardware y
software, imaginemos por un momento un computador con una GUI totalmente en
blanco (sin nada), que haramos?, donde hiciramos clic, donde escribiramos.
2.1 Consideracin en el diseo de una GUI:
Basndonos en [32] y [33], al momento de crear una GUI debemos tener en
cuenta muchos factores en cuenta entre los cuales destacamos:
Debe ser intuitiva
Definir los modos de interaccin: Flexibles y adecuados
Dar opciones de interrumpir una accin, volver a ejecutar una accin
Pasos repetidos: macros
Mantener una interfaz consistente fuente, colores, distribucin de los
controles, terminologa
Navegabilidad entre interfaces, volver atrs o regresar al principal
Facilidades de ayuda
Categorizacin de las funciones


2.2 Contenedores y componentes grficos (Objetos grficos)
Los componentes de una GUI son elementos grficos que permiten que
interactuamos con los sistemas de informacin, los ms comunes que
encontramos son: botones, cajas de textos, listas desplegables, barras de
men, reas de texto, entre otras, Gracias a la POO en la mayora de
lenguajes de programacin estos componentes ya estn programados y
permiten ser manejados a travs de sus mtodos.

Los contenedores de una GUI son como su nombre lo indica los que permiten
contener, ordenar, agrupar los componentes.

En J AVA y gracias al entorno de desarrollo NETBEANS podemos utilizar los
componentes y los contenedores de una manera muy fcil, agradable y sin la
necesidad de utilizar cdigo.

En java se utiliza dos libreras para la parte grafica, la AWT y la SWING, esta
ultima remplaz de a la primera en cuanto a los componentes utilizado por lo
cual utilizaremos la librera Swing.







En la siguiente imagen podremos ver algunos de los componentes ms usados


Formularios: Clase jFrame
Tomando como base una de las definiciones de la real academia Impreso
con espacios en blanco, un formulario en programacin es un rea donde
encontraremos un conjunto de componentes grficos que aparecern en
blanco para que el usuario final los diligencie.
Agregar un formulario usando netbeans.
Hacemos clic derecho la carpeta de las fuentes del proyecto
escogemos new y luego J Frame Form as:



Aparecer la siguiente pantalla donde escribiremos el nombre de la
clase. Observar que en el campo Package diga el proyecto donde
estamos trabajando en este caso miprimerproyecto.


Le damos clic finish y listo hemos creado nuestro primer formulario.



2.2.1 Cajas de textos: Clase jTextField.
Una caja de texto es un espacio rectangular dentro del formulario en el cual se
puede digitar informacin alfanumrica y se usa en los formularios para pedir
informacin abierta que no es muy larga o requiera tabulaciones o cambio de
lnea.
2.2.2 Etiquetas: Clase jLabel.
Una etiqueta es un texto fijo que aparecer en el formulario

2.2.3 Listas despegables: Clase jComboBox
Una Lista despegable es un espacio dentro del formulario en el cual se puede
escoger informacin alfanumrica dentro de una lista de opciones y se usa en los
formularios para pedir informacin cerrada, limitada mediana.
2.2.4 reas de textos: Clase jTextArea.
Una rea de texto es un espacio rectangular dentro del formulario en el cual se
puede digitar informacin alfanumrica y se usa en los formularios para pedir
informacin abierta que puede ser muy larga o requiera tabulaciones o cambio de
lnea.
2.2.5 Botones de opciones: Clase jRadioButton
Un botn de opcin es un espacio dentro del formulario en el cual se puede
escoger informacin alfanumrica dentro de unas opciones y se usa en los
formularios para pedir informacin cerrada, limitada pequea.
2.2.6 Botones: Clase jButton
Un botn es un espacio dentro del formulario en el cual podemos ordenar a que la
GUI realice algn procedimiento, ejemplo volver a principal, enviar informacin a la
base de datos entre otra.

2.2.7 Mtodos importante en los componentes
COMPONENTE
ELEMENTO
GRAFICO
METODO IMPORTANTES ALGUNAS
PROPIEDADES
Cuadro de textos
(objetos de
jTextField)
jTextField1,
jTextField2
Cuadro de
contrasea (objetos
de jPasswordField)
jPasswordField1,
jPasswordField2.
Etiqueta (objetos de
jLabel) jLabel1,
jLabel2.

rea de texto
(objetos de
jTextArea)
jTextArea1,
jTextArea2.
setText(String): lleva
informacin a la caja de texto
ejemplo
jTextField1.setText(hola); en la
caja de texto quedara escrito
hola.
getText(): trae la informacin
que tiene la caja de texto escrito
en formato de String ejemplo
String
nombre=jTextField1.getText();
en la variable nombre queda
almacenado lo que tiene la caja
de texto escrito.

Ensayar y analizar
qu pasa.
La mayora de las
propiedades se
pueden modificar
tambin por
mtodos ejemplo
text se puede
modificar con
setText(valor en
string).
Botones de opcin
(objetos de
jRadioButton)
jRadioButton1,
jRadioButton2
Para este objeto es
isSelected(): devuelve falso o
verdadero dependiendo si el
jRadioButton esta seleccionado
ejemplo
jRadioButton1.isSelected();
buttonGroup: permite
escoger a qu grupo
pertenece el botn
de opcin.
Dentro de un grupo
solo se permitir
necesario agregar un

Este objeto no se ve
en pantalla.
Para que se pueda
seleccionar una sola
de varias opciones y
a cada objeto
jRadioButton que
vayan a pertenecer
al mismo grupo se
debe modificar la
propiedad

escogiendo al grupo
al cual pertenece

seleccionar un solo
botn de opcin.

Ensayar y analizar
qu pasa.

Casilla de
verificacin
(objetos de
jCheckBox)
jCheckBox1,
jCheckBox2

isSelected(): devuelve falso o
verdadero dependiendo si el
jCheckBox esta seleccionado
ejemplo
jCheckBox2.isSelected();
Muy parecidas al de
los RadioButton
Tabla (objetos de
jTable) jTable1,
jTable2
setValueAt(valor a enviar tipo
Objetc, fila, columna); lleva
informacin a la tabla en la fila y
columna escogida .
ejemplo
Una de las
propiedades ms
importante es la
propiedad model
puesto que aqu nos
jTable1.setValueAt(Wilson, 0,
1); lleva Wilson a la fila 0
columna 1

getValueAt(fila, columna); trae
informacin de la tabla en la fila
y columna escogida. se debe
saber el tipo de variable que
tiene la columna para convertirla
ejemplo: supongamos que la fila
1 sea string entonces quedara
as String nombre=
jTable1.getValueAt(0,1).toString
();
en variable nombre queda
almacenado lo que tiene la tabla
en la fila 0 columna 1.
permite crear las
columnas de la tabla.
Botones (Objetos de
jButton) jButton1,
jButton2. Se utilizan
bsicamente para
programar eventos
(acciones).

para colocar un
imagen en el botn
Lista desplegable:
(Objeto jComboBox)
se utiliza cuando
tenemos opciones
limitadas.

setSelectedItem (Object):
selecciona la informacin a la
lista desplegable. Debe existir lo
que le enviamos como Object.
Ejemplo jComboBox1.
setSelectedItem(Item 2); en la
lista desplegable quedara
Una de las
propiedades ms
importante es la
propiedad model
puesto que aqu nos
permite crear lista
de opciones.
seleccionado Item 2.
getSelectedItem() trae la
informacin que tiene la lista
desplegable en formato de
Object, toca convertirlo en
String agregando toString();
Ejemplo: sea la variable
String sexo = jComboBox1.
setSelectedItem().toString(); en
la variable sexo queda
almacenado lo que tiene la lista
desplegable escogido

addItem(Object): para agregar
un nuevo tem desde cdigo
ejemplo:
jComboBox1.addItem("xxx");
queda creado un nuevo Item en
la lista xxx.

2.2.8 Mas componentes, ejemplo con Netbeans
Luego de crear el formulario aparecen en la parte izquierda de su pantalla los
componentes y los contenedores grficos:

En este caso utilizaremos los componentes (Swing Controls) para realizar nuestra
primera GUI.
Diseando mi primera GUI
Bastara con hacer clic sostenido sobre el componente que se quiere
y luego soltarlo en el formulario, ejemplo escogemos una etiqueta
jLabel y lo arrastramos hasta el formulario.


Para escribir lo que se quiere en el jLabel, verificamos que este
seleccionado (tiene los cuadritos alrededor) sino lo seleccionamos
con un clic sobre l.
Buscamos la parte donde estn las propiedades o atributos.

En la propiedad text escribimos lo que se quiere que aparezca en la
etiqueta.

Y listo hemos agregado la etiqueta
En la propiedad font podremos escoger el tipo, estilo y tamao de
letra haciendo clic en .
Al igual que en la propiedad foreground podremos escoger el color
haciendo clic en su respectivo .
Para agregar los dems componentes se hace de la misma manera, repase
la seccin Mtodos importante en los componentes, observe las
propiedades y recomendaciones de los componentes grficos.
Tenga en cuenta que es obligatorio que cuando se agreguen los botones de
opcin a una GUI se debe agregar al menos un componente de
buttonGroup para agruparlas y permitir que de todas las opciones se
escoja una sola. Adems cuando se agregue informacin a una lista
desplegable a travs de la propiedad model, en la primera opcin coloque
Seleccione (la letra S mayscula) para efectos de validacin ms
adelante, ejemplo:


Creemos una GUI para la siguiente tabla de la base de datos.
Nio
Documento
Nombre
Apellido
Sexo
Grado


El documento, el nombre y el apellido deben pedirse con cajas de textos
(jTextField) porque tienen posibilidades infinitas. Ejemplo: preguntmonos cuantos
nombres existen o cuantos documentos o cuantos apellido, la respuestas seria
que existen muchsimos.
El sexo se siguiere pedirlo con botones de opcin puesto que son solo dos
opciones
El grado se sugiere pedirlo con lista desplegable

Realicemos un anlisis de los objetos que contiene nuestra primera GUI
7 etiquetas - jLabel
3 Cajas de Texto - jTextField
4 botones jButton
2 botones de opcin - jRadioButton
1 lista desplegable jComboBox
Grupo de botones - buttonGroup este no se visualiza, pero permite que en
los botones de opcin se seleccione solo uno

Para ver funcionando nuestra primera GUI debemos programar en la clase del
proyecto (la que se cre cuando creamos el proyecto por primera vez) una
referencia un objeto de nuestra primera GUI as:

Clase del
proyecto
Y procedemos hacer clic en para ver nuestra primer GUI funcionando.
Hasta hemos creado satisfactoriamente nuestra primer GUI pero ahora mismo los
botones no estn funcionando puesto que no hemos programado ningn evento
para que se ejecute.
2.2.9 El mtodo initComponents
El mtodo initComponents es un mtodo que crea automticamente netbeans y
en l se encuentra todo lo creado referente por la interfaz grafica.
Para verlo nos vamos al cdigo a travs source

Aparecer el cdigo de nuestro clase en este caso el del la clase
MiPrimerFormulario

Y Hacemos clic en el en botn + cerca a y aparecer la
codificacin de los componentes grficos donde podremos apreciar todo el
concepto y la importancia de POO.


Podemos apreciar la creacin de los 7 objetos de la clase jLabel, 4 objetos de la
clase jButton, los 3 objetos de la clase jTextField, los 2 objetos de jRadioButton, un
objeto de jComboBox y el de buttonGroup. Adems podemos ver todos los
mtodos que se utilizaron para crear la GUI. Todo es cdigo generado gracias a
nuestro IDE de desarrollo netbeans.
2.2.10 Eventos
Los eventos son todas las acciones con las cuales el usuario interacta con la
GUI, dar clic sobre un botn, presionar las teclas del teclado, entre otros. Cada
vez que se produce un evento, se crea un objeto. La clase padre de los eventos es
"java.awt.event".
Cada lenguaje de programacin tiene su propio modelo de eventos, en J ava se
definen clases auxiliares llamadas escuchadores (listeners) que reciben eventos
especficos
5
.
No es propsito de este modulo profundizar en este tema, se trabajar solo el
evento clic del botn.
Creando GUIS y programando los eventos de los botones.
Pasos
1. Cree un proyecto llamado operaciones:
2. Cree 5 formulario - jFrame realice el procedimiento descrito anteriormente



5
http://victoralex-poo.blogspot.com/2011/04/eventos-excepciones-y-errores.html
CLASE O ARCHIVO: Principal







CLASE O ARCHIVO: Sumar
CLASE O ARCHIVO: Restar
CLASE O ARCHIVO: Multiplicar
CLASE O ARCHIVO: Divisin


3. Programe todos eventos de los botones de todas las interfaces
Para programar los botones se debe hacer doble clic sobre ello.
Botones de la interfaz principal:
Los botones de la interfaz principal se programan de manera muy similar,
puesto que lo que se quiere es que abra otra ventana (navegabilidad).

Doble clic sobre el botn y aparecer la fuente(el cdigo)

J usto hay debemos programar la navegabilidad hacia el formulario
donde queremos ir en este caso queremos ir al formulario suma.
En forma general para la navegabilidad se usa el siguiente
cdigo:
NombredelaClase variable = new NombredelaClase(); //se
crea el objeto
variable.setVisible(true); //se hace visible el formulario
this.dispose(); //se cierra el anterior.
El botn ir suma quedara programado as:

Para programar el resto de botones de navegabilidad (ir a otro
formulario) se repiten los paso anteriores.

BOTON:
Se da doble clic y el cdigo para cerrar la aplicacin es
System.exit(0);
Botones de la interfaz suma:
Las cajas de texto se llaman jTextField1 y jTextField2 y donde se
quiere la respuesta es jLabel5.
BOTON
Para hacer el botn sumar recordar los conceptos vistos en el modulo
algoritmos.
El algoritmo de sumar seria:
Inicio
Leer num1
Leer num2
res=num1 +num2;
Escribir la suma es ,res
fin
Para hacer este algoritmo en java nuevamente usamos clases que ya
existen para facilitarnos el trabajo (POO) pero la lgica se mantiene
Se da doble clic en el botn sumar y el cdigo es el siguiente:
try //por si hay error en la lectura de los datos
{
int num1,num2,res=0; // definimos las variables
num1=Integer.parseInt(jTextField1.getText()); // leer num1
num2=Integer.parseInt(jTextField2.getText()); // leer num2
res=num1+num2; // operacin
jLabel5.setText(""+res); //mostrar resultados
}
catch(Exception e) // captura el error
{
J OptionPane.showMessageDialog(null,"Ha ocurrido un error en el
boton sumar"+e.getMessage()); //muestra el mensaje de error
}

Tambin se debe agregar un paquete (librera) en la parte superior del
cdigo para manejar mensajes grficos (J OptionPane) as;


BOTON:
Se da doble clic y el cdigo es el siguiente

BOTON:
Se programa como una navegabilidad.



2.3 CREACIN DE CLASE DE VALIDACIN
En este caso se trata de crear una clase que nos permita validar la informacin de
una GUI y poderla utilizar en todos los proyecto de aqu en adelante.
Existen muchas formas de validacin de informacin en las GUI, en este modulo
las clasificaremos y seguiremos un orden.
Clasificacin de validacin
Validacin de blancos o vacio:
Es cuando el componente no ha recibido ninguna informacin del usuario.
El error ocurre cuando en una caja de texto, simplemente no ha escrito
nada, en un lista desplegables podemos dejar una primera opcin que diga
seleccione y si el usuario no escoge otra, sabremos ocurrir el error y en un
botn de opciones simplemente no ha escogido ninguna opcin.
Validacin numrica:
Cuando en un campo se requiera una informacin numrica ya sea entera o
sea real ejemplo un valor, un saldo, una cantidad entre otras. El error ocurre
cuando en una caja de texto escriben algo diferente a nmero, en una lista
desplegable y en los botones de opciones no hay necesidad de validar esta
forma de validacin.
Validacin de rango
Cuando en un campo se requiere validar limites numricos ejemplo que el
valor no sea negativo (>0). El error ocurre cuando en una caja de texto
nmeros superando los lmites propuestos, en una lista desplegable y en
los botones de opciones no hay necesidad de validar esta forma de
validacin.


Clase validacin

2.4 VALIDACION DE LOS OBJETOS GRFICOS DE UN FORMULARIO
UTILIZANDO LA CLASE DE VALIDACIN CREADA EN LA SECCIN
ANTERIOR
Retomemos el ejemplo del registro de nios en la seccin 2.3.9

Para la validacin de cualquier GUI seguiremos los siguientes pasos
Crearemos un mtodo que se llame Validacin que reciba como parmetros
los campos a validar. en este caso 4 campos de tipo String porque no se
tiene en cuantos los botones de opcin, para validarlos lo haremos
directamente dependiendo del nmero de ellos que este en el grupo.
La intencin de este mtodo de Validacin es indicar si hay error retorna
falso (false), si no hay error retornara verdadero (true), para cuando se
quiera guardar la informacin, en otras palabras, si hay error no se
guardar la informacin en la base de datos.

Creacin del objeto validacin.

Empezar a validar campo por campo utilizando la clase validacin que ya
creamos siguiendo el orden sugerido: primero validar blancos, luego
numricos y por ltimo rango utilizndola estructura de control si (if)
anidados. Para este ejemplo debemos validar 5 blancos, un numrico
(documento) y vamos a suponer que el documento debe ser mayor a
999.999 y menor a 1.000.000.000
Para validacin de campos vacios utilizamos el mtodo
ValidarCampoVacio de la clase validacin:
Ejemplo validemos el campo documento


Para la validacin de los dems campos toca utilizar IF anidados, es decir
IF dentro de IF as:

Y as sucesivamente.

Para validar los botones de opciones se har el siguiente IF:

Dentro del mtodo validacin quedara as;


Cuando vayamos a comparar las listas desplegables (jComboBox)

El cual lo incluiremos dentro del ultimo if.

Para validacin de campos numricos utilizamos el mtodo
ValidarNumeroEntero para nmeros entero y ValidarNumeroReal para
nmeros reales de la clase validacin:
Ejemplo validemos que el campo documento sean numrico entero.

Este if se incluye dentro del ltimo if.

Para validacin de rango utilizamos el mtodo ValidarRango de la
clase validacin:
Ejemplo: validemos que el documento sea mayor a 999.999 y menor a
1.000.000.000

Este if se incluye dentro del ltimo if.

Parte superior de Mtodo Validacin observe la estructura de los IF



Y listo hasta aqu hemos creado un mtodo que nos valida toda la
informacin de la GUI de registro de nios

Probando el mtodo de validacin
Solo necesitamos llamarlo desde el evento de un botn guardar y pasarle
los parmetros necesarios que estn en los componentes grficos as:


Y luego ejecutamos el proyecto.


RESUMEN DE LA UNIDAD
En esta unidad se explica las consideraciones generales al momento de disear
una interfaz grafica de usuario (GUI), algunos de los diferentes contenedores y
componentes grficos, adems se trabajan ejemplos prcticos con el IDE de
desarrollo netbeans. De igual forma se muestra el ejemplo paso a paso de
validacin una GUI.





AUTO EVALUACION
1. Tomando como referencia el ejercicio del observador del alumno
desarrollado en el modulo de bases de datos, realice una interfaz grafica
de usuario para cada una de las tablas del ejercicio.



























Estudiantes
Identificacin
Nombre
Apellidos
Fecha de nacimiento
Direccin
Telfono
e-mail
Gnero
Peso
Talla
RH
Grado
Grupo
J ornada
Situacin vulnerabilidad
Numero de hermanos
Nmero de personas
Estrato social,
Discapacidad
CodigoSeguridadSocial
Familiar
Identificacin
IdentificacionEstudiante
Nombre
Apellidos
Direccin
Telfono
e-mail
Profesin
Nivel acadmico

Acudiente
Identificacin
IdentificacionEstudiante
Nombre
Apellidos
Direccin
Telfono
E-mail
Profesin
Nivel acadmico
Rasgo familiar
Informacin
Acadmica
IdentificacionEstudiante
Colegio de procedencia
Grados realizados
J ornada
Tipo de institucin
Motivo del retiro
grados repetidos
Fecha de retiro
Aptitud Vocacional
Seguridad Social
Cdigo
Nombre
tipo de seguridad













2. Valide cada una de las interfaces realizadas en el punto anterior.
3. Cree una interfaz principal con botones para acceder (navegabilidad) a
cada una de las GUI realizadas en el punto 1.

Anotacin
IdentificacionEstudiante
IdentificacinDocente
Fecha
Observacin realizada
Seguimiento
Accin tomada
Compromisos.

DocenteDirectorGrupoI
dentificacin
Nombre
Apellidos
Direccin
Telfono
e-mail
Profesin
Grado
Grupo












COMUNICACIN A BASE DE DATOS Y REPORTES








UNIDAD 3
3.1 Creacin de clases de comunicacin JAVA con
MYSQL
3.2Guardar informacin en la base de datos de
una interfaz grafica validada usando la clase
Conexin
3.3 Actualizar informacin en la base de datos de
una interfaz grafica validada
3.4Eliminar informacin en la base de datos de
una interfaz grafica validada
3.5Buscar informacin por llave primaria desde
una base de datos de una interfaz grafica



PRESENTACIN
En esta unidad abordaremos el tema de comunicacin de la GUI con la base de
datos utilizando el IDE de desarrollo netbeans. La importancia de este tema radica
en que a travs de GUI podremos guardar, actualizar, eliminar y buscar
informacin que tenemos almacenada.

PLANTEAMIENTO DEL PROBLEMA
Cmo se puede establecer la comunicacin entre la GUI y las bases de datos
para el desarrollo de sistemas de informacin dentro de su institucin que
permita mejorar los procesos?
COMPETENCIAS ESPECFICAS
Establecer comunicacin entre la GUI y las bases de datos
Guardar, actualizar, eliminar y buscar informacin desde la base de datos.

DINMICA PARA CONSTRUIR EL CONOCIMIENTOS
ACTIVIDAD PREVIA: Trabajo independiente
Contesta las siguientes preguntas
1. Define con tus propias palabras lo importancia que tienen las bases de datos
2. Porque es importante que haya una buena comunicacin entre la GUI y la base
de datos.
3. Porque es necesario imprimir informacin en una sistema de informacin.
COMUNICACIN CON BASES DE DATOS
3.1 CREACIN DE CLASES DE COMUNICACIN JAVA COM MYSQL
Al igual que en el tema de validacin crearemos una clase que nos permita
trabajar de una manera simple la comunicacin con la base de datos en todos
los proyectos que necesitemos crear.
En esta clase crearemos los mtodos que nos permitan establecer la
comunicacin, llevar informacin y buscar en la base de datos.
Lo primero que hay que tener en cuenta para poderse comunicarnos es que
necesitamos el nombre de la base de datos, el usuario y la contrasea, que
utilizaremos en el mtodo Conectar() para poder comunicarnos con la base de
datos y obtener el permiso para poder guardar, actualizar, eliminar y buscar
informacin.
Lo segundo a tener en cuenta es que para guardar, actualizar y eliminar
necesitaremos un solo mtodo el Ejecutar() el cual simplemente ejecuta la
sentencia SQL en la base de datos.
Lo tercero a tener en cuenta es que para buscar informacin utilizaremos un
solo mtodo el Consulta() el cual ejecutara la consulta en la base de datos y
traer informacin de regreso con ayuda de la clase .
Por ltimo se debe crear un mtodo el Desconectar() que cierre la
comunicacin para liberar recursos del sistema de informacin.
La clase Conexin quedara as



Guardar informacin en la base de datos de una interfaz grafica validada
usando la clase Conexin
En este punto retomarnos el ejemplo de registro de nio el cual la GUI ya fue
validada
Para guardar informacin en la base de datos se siguen los siguientes pasos.
Se debe crear una base de datos en mysql para este ejemplo llammosla
colegio.
Dentro de esa base de datos se debe crear la tabla que se utilizo para
disea nuestra GUI

Nino
Documento
Nombre
Apellido
Sexo
Grado

El primer paso es agregar la biblioteca MYSQL J DBC, la cual es la que
nos ayuda en todo lo referente a la comunicacin con la base de datos. Esta
biblioteca solo se debe agregar una sola vez por cada proyecto.
Para agregarla seguimos los siguientes pasos
o Clic derecho sobre Libraries (biblioteca) y luego en Add Library
(agregar biblioteca) as

o Por ltimo se escoge la biblioteca Driver MySQL J DBC y se da
clic en agregar biblioteca as:


o Verifique que dentro de biblioteca haya quedado ya insertada
as:


Una vez creado la tabla procedemos en java a crear un mtodo en la GUI
que se llame guardar que recibe los parmetros necesarios en para guardar
la informacin (documento, nombre, apellido, sexo y grado).

Creamos el objeto de conexin que necesitamos para la comunicacin con
la base de datos y llamamos al mtodo que nos hace la comunicacin con
la base de datos. Le debemos pasar los parmetros de conexin, el nombre
de la base de datos, el usuario y la contrasea. Adems lo llamamos dentro
de un IF para verificar que si se logro conectar correctamente.
Ahora creamos la instruccin SQL de guardar y la ejecutamos con el mtodo
ejecutar de la clase conexin, tambin dentro de if para verificar que
efectivamente ejecuto la instruccin SQL.
Por ltimo desconectamos la comunicacin.


Y listo hemos creado el mtodo que nos guardara la informacin en la base
de datos. Solo faltara llamarlo con los parmetros completos dentro del
botn guardar previa validacin. Adems hacemos un IF donde
preguntemos cual de los botones de opcin esta elegido y asignamos una
variable para el campo sexo as:

Ejecutemos el proyecto y guardemos informacin.


3.2 ACTUALIZAR INFORMACIN EN LA BASE DE DATOS DE UNA INTERFAZ
GRAFICA VALIDADA
Para actualizar informacin lo hacemos muy similar a guardar y seguimos los
siguientes pasos
Creamos un mtodo que se llame actualizar que reciba todos los
parmetros.
Hacemos lo mismo que en guardar solo que instruccin SQL utilizamos la el
UPDATE que es el que nos permite actualizar

Si observamos bien es casi idntico al mtodo guardar lo nico que cambia
es la instruccin SQL.
Por ltimo se llama de una manera muy similar al mtodo guardar pero en
este caso se llama al mtodo actualizar y se cambia el mensaje enviado a
actualizado correctamente.

Ejecutemos el proyecto y probemos la funcionalidad.
3.3 ELIMINAR INFORMACIN EN LA BASE DE DATOS DE UNA INTERFAZ
GRAFICA VALIDADA
Para eliminar informacin lo hacemos muy similar a guardar y actualizar, seguimos
los siguientes pasos
Creamos un mtodo que se llame eliminar que reciba solo el parmetro de
llave primaria o cdigo de la tabla, en este caso documento
Hacemos el mtodos que elimine

Si observamos bien es casi idntico al mtodo guardar lo nico que cambia
es la instruccin SQL y que recibe un solo parmetro.
Por ltimo para llamar al mtodo eliminar no es necesario validar todo,
solamente se debe validar el documento, crearemos un mtodo validar que
solo valide el documento. (Siguiendo las mismas indicaciones de la seccin
validacin de los objetos grficos de un formulario utilizando la clase de
validacin) as:

Por ltimo llamamos al mtodo eliminar dentro del botn Eliminar as:


Ejecutemos el proyecto y probemos la funcionalidad.


3.4 BUSCAR INFORMACIN POR LLAVE PRIMARIA DESDE UNA BASE DE
DATOS DE UNA INTERFAZ GRAFICA
Para buscar informacin, utilizaremos la misma clase ya creada de conexin, los
pasos son los siguientes:
Crear un mtodo en la GUI que se llame buscar que solamente como
parmetro reciba la llave primaria en este caso el campo documento.

Creamos el objeto de conexin que necesitamos para la comunicacin con
la base de datos y llamamos al mtodo que nos hace la comunicacin con
la base de datos. Le debemos pasar los parmetros de conexin, el nombre
de la base de datos, el usuario y la contrasea. Adems lo llamamos dentro
de un IF para verificar que si se logro conectar correctamente.
Agregamos de la librera java.sql.* en la parte superior en esta librera se
encuentra la clase Resultset.

Ahora creamos un objeto de la clase Resultset, la cual es una clase que
guarda la informacin que la base de datos le enva a java cuando se hace
una bsqueda.

Hacemos la instruccin SQL de buscar y la ejecutamos con el mtodo
consulta de la clase conexin y lo que el mtodo devuelve se lo asignamos
al objeto resultado as:

Seguidamente debemos preguntar si en el objeto resultado quedo
almacenada informacin. Si trajo informacin la enviaremos a la GUI en
caso contrario enviaremos un mensaje diciendo que con ese documento no
existe ningn nio. Para realizar este procedimiento encerrar todo con
sentencia try catch por si sucede un error en el objeto resultado as :

Para enviar la informacin a la GUI tenemos que tener en cuenta al objeto.
Por ejemplo el nombre est en el objeto jTextFiel2. Adems tendremos en el
campo sexo que realizar una pregunta para saber cual objeto de los botones
de opciones hay que activar.
El envi a la GUI quedara as:

Por ltimo desconectamos la comunicacin.

Y listo hemos creado el mtodo que nos buscara la informacin en la base
de datos y mostrarla en la GUI. Solo faltara llamarlo con el parmetro dentro
del botn buscar previa validacin del campo documento.

El mtodo completo quedara as:

Llamar al mtodo dentro del evento del botn buscar.

Ejecutemos el proyecto y probemos.

RESUMEN DE LA UNIDAD
En esta unidad se trabaja con un ejemplo prctico la comunicacin de la GUI con
la base de datos, permitiendo guardar informacin nueva, actualizar y eliminar
informacin existente todo a travs de una clase llamada conexin que podr ser
utilizada en todos los proyectos que deseen desarrollar. Tambin se explica la
forma de recuperar y/o buscar informacin desde la base de datos y mostrarla en
la GUI


AUTO EVALUACION
Tomando como referencia el ejercicio del observador del alumno, comunique
todas las GUI del la autoevaluacin de la unidad 2 con la base de datos.
1. Cree un mtodo en cada interfaz que permita guardar la informacin
solicitada.
2. Cree un mtodo en cada interfaz que permita actualizar la informacin
solicitada por cdigo o llave primaria.
3. Cree un mtodo en cada interfaz que permita eliminar la informacin
solicitada por cdigo o llave primaria
4. Cree un mtodo en cada interfaz que permita buscar la informacin
solicitada por cdigo o llave primaria






[1] Flores, J .J . (2011). Mtodo para la solucin de problemas utilizando la
Programacin Orientada a Objetos. Aspectos bsicos. Recuperado de
http://books.google.com.co/books?id=SwKI-
CMJ US0C&pg=PA41&dq=que+es+el+lenguaje++java&hl=es&sa=X&ei=pU7f
UeziGoX_4AOS9oDwDA&ved=0CGMQ6AEwCQ#v=onepage&q=que%20es
%20el%20lenguaje%20%20java&f=false
[2] Oracle. (2011).Qu es la tecnologa J ava y por qu lo necesito?
Recuperado de http://www.java.com/es/download/faq/whatis_java.xml
[3] BARBANCHO, J ., BENJ UMEA, J ., ROMERO, O., ROMERO, M.,
ROPERO, J ., SANCHEZ, G. y SIVIANES F. (2010). Servicios en red.
Espaa: Paraninfo
[4] NetBeans. (2012). Recuperado de http://www.guia-
ubuntu.com/index.php/NetBeans.
[5] Introduccin a iReport. (2005). Recuperado de
http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=ireport
[10] J oyanes, J ,. Programacin Orientada a Objetos. (1996). Espaa:
McGraw-Hill.
[11] Ventajas de la programacin orientada a objetos. (2010). Recuperado
de http://www.ciberaula.com/articulo/ventajas_poo/
[12] Martnez, F., Martin, G. (2003). Introduccin a la programacin
estructurada en C. Espaa: Maite Simn
[13] Programacin orientada a objetos versus programacin estructurada:
C++ y algoritmos.(2002). Recuperado de http://www.mcgraw-
hill.es/bcv/guide/capitulo/8448146433.pdf
[14] Lenguajes de programacin. (2008). Recuperado de
http://guimi.net/descargas/Monograficos/G-Lenguajes_de_programacion.pdf
[15] Rodrguez, R., Sosa, E., Prieto, A. (2004). Programacin orientada a
objetos. Recuperado de http://libreriaalvaro.com/libropoo.pdf
BIBLIOGRAFIAS
[16] Martnez, R., Quiroga, E. Estructuras de datos/ Data Structures:
Referencia Practica Con Orientacin a Objeto. (2002). Espaa: Thomson
learning
[17] Bahit, E.(2013). Teora sintctico-gramatical de objetos. Recuperado de
http://www.bubok.es/libros/219288/Teoria-sintacticogramatical-de-objetos
[18] Clase (informtica). (2013). Recuperado de
https://es.wikipedia.org/wiki/Clase_(inform%C3%A1tica).
[19] INTRODUCCIN A LA PROGRAMACIN ORIENTADA A OBJ ETOS.
(1996). Recuperado de http://zarza.usal.es/~fgarcia/doc/tuto2/I_1.htm
[20] Mtodo constructor de una clase (__construct). (2000). Recuperado de
http://www.phpya.com.ar/poo/temarios/descripcion.php?cod=39&punto=5&in
icio=0
[21] Diagrama de clases. (2013). Recuperado de
http://es.wikipedia.org/wiki/Diagrama_de_clases
[22] INTRODUCCIN A LA PROGRAMACIN ORIENTADA A OBJ ETOS.
(1996). Recuperado de http://zarza.usal.es/~fgarcia/doc/tuto2/I_1.htm.
[23] TIOBE Programming Community Index for J uly 2013. (2013).
Recuperado de
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html.
[24] Descripcin y caractersticas de este potente y moderno lenguaje de
programacin. (2013). Recuperado de
http://www.desarrolloweb.com/articulos/497.php
[25] Tipos de datos primitivos. (2008). Recuperado de
http://www.codexion.com/tutorialesjava/java/nutsandbolts/datatypes.html.
[30] Interfaz grfica de usuario. (2013). Recuperado de
http://es.wikipedia.org/wiki/Interfaz_gr%C3%A1fica_de_usuario
[31] Cervigon, C. Interfaces Graficas de usuarios. (2010). Recuperado de
http://www.fdi.ucm.es/profesor/jpavon/poo/tema6resumido.pdf.
[32] Vzquez, p., Marco, J ., Martin, A., Molinero, X. (2006). Programacin en
c++para ingenieros. Espaa: Paraninfo
[33] DISEO DEL DIALOGO GUI (INTERFAZ GRFICA DE USUARIO).
(2003). .Recuperado de
http://www.virtual.unal.edu.co/cursos/sedes/manizales/4060030/lecciones/C
apitulo%205/gui.htm



Fotos
[Imagen de POO unidad 1]. Recuperado de
http://elvex.ugr.es/decsai/builder/intro/5.html
[Imagen de interfaces graficas de usuario]. Recuperado de
http://www.os.catacamas.net/Sistemas%20operativo%20de%20tiempo%20real/Int
erfaz%20grafica%20de%20usuario.html


Videos
[video 1] Centeno, D., Chvez, K. (5 de junio de 2012). Creacin de interfaz grafica
de usuario en Netbeans. [Archivo de video]. Recuperado de
http://www.youtube.com/watch?v=EbNZDa-j-64
[video 2] Ramrez, M. (6 de noviembre de 2011). Instalar jdk y Netbeans 7.0.
[Archivo de video]. Recuperado de
http://www.youtube.com/watch?v=KQk0OUZ1rGY

Вам также может понравиться