Sei sulla pagina 1di 29

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)

ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA


PROGRAMACION ORIENTADA A OBJETOS

PROGRAMACION ORIENTADA A OBJETOS

Fase 1 - Anlisis de requisitos.

PRESENTADO POR:

CESAR ENRIQUE ARGUMEDO

EDDA MARYURY MONTERO

CARLOS ANDRES CUELLAR

SANDRA MARITZA NARVEZ

GINYER YINETH JARABA.

GRUPO: 301403_58

TUTOR
FRANKLIN LIZCANO CELIS

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA U.N.A.D


2017

1
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS
INTRODUCCION

La Programacin Orientada a Objetos trata de utilizar un enfoque real del mundo dentro
de nuestros programas. La visin que se tiene del mundo dentro de la programacin
orientada a objetos es que se encuentra hecho por objetos. Para comprender bien la
programacin orientada a objetos tenemos que olvidar un poco la Programacin
Estructurada ya que si nos fijamos bien es algo artificial, la programacin orientada a
objetos es una forma de emprender los problemas ms naturales. Aqu natural significa
ms en contacto con el mundo real que nos rodea, de esta forma si queremos resolver
un problema concluyente, debemos identificar cada una de las partes del problema con
objetos presentes en el mundo real.

2
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS
ACTIVIDADES A DESARROLLAR

1. Eleccin del proyecto a desarrollar:

El grupo colaborativo en consenso entre todos los compaeros, deben elegir una (1) de
las propuestas planteadas en el Anexo 1 que se encuentra en la carpeta junto a este
documento, con el fin de desarrollarla durante el periodo acadmico.
Una vez elegida deber informar en el foro de la Fase1 la propuesta elegida.

Temtica a abordar:

Eleccin del proyecto a desarrollar.

Proyecto A.

Consultar y reconocer las caractersticas generales de la


programacin orientada a objetos y la estructura del Lenguaje Java,
que ser utilizado para el desarrollo del proyecto.

PREGUNTAS
1. Cul es la diferencia entre programacin estructurada y programacin
orientada a objetos

La diferencia que hay entre la programacin estructurad y la programacin orientada a


objetos es que: La programacin estructurada consta de una organizacin donde se va
ejecutando paso a paso y esta debe de tener una continuidad y una lgica para que su
funcin sea eficiente.

La programacin orientada a objetos se fundamenta en una nueva forma de pensar los


problemas, declarando como variables los objetos del problema y que a su vez cada
objeto tiene arraigadas variables que hacen referencia al dato.

3
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

2. Ventajas y desventajas de la programacin orientada a objetos

Ventajas:

La primera ventaja del concepto de objetos es que todo el cdigo que tiene algo que
ver se encuentra en un solo lugar.
Los objetos pueden poseer atributos inherentes de la clase a la que pertenecen.
La programacin orientada a objetos hace que los programas grandes sean ms
manejables.
Dinamismo en el manejo de los datos.
Facilidad en el mantenimiento y expansin.

Desventajas:
Si se fuerza el lenguaje en el concepto de programacin orientada a objetos se pierden
algunas de las caractersticas de lenguajes tiles como los lenguajes funcionales.
Que un programador tiene de lo que constituye un objeto abstracto puede no coincidir
con la visin de otro programador.
Mayor cantidad de cdigo.

3. Sintaxis para definir variables en Java

La sintxis de la definicin de variables en programacin Java es similar a la que se


emplea en C. All se hace una relacin de determinada variable con el tipo de dato que
se va a almacenar.

Para asignar un valor entero a la variable Num de emplea el tipo de dato int. El valor
principal de esta declaracin ser igual a 0, hasta que se le asigne un nuevo valor.

Ejm:

Int Num;

Sintaxis:
Tipo_Dato Nombre_Variable;

4
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS
4. Sintaxis para imprimir en consola en Java

Cuando se quiere imprimir en pantalla se utiliza System.out que representa la salida


estndar. El mtodo para escribir en formato de salida ms utilizado es print.

La sintaxis quedara de la siguiente manera:

System.out.print (Esto se imprime en consola);

5. Sintaxis para comentar en Java

Sintaxis para comentario de solamente una lnea de cdigo:

1. // Este es un comentario de una lnea

Sintaxis para comentario de varias lneas de cdigo:

1. /* Este es un
2. Comentario de
3. Varias lneas */

Sintaxis para comentario para JavaDoc:

1. /** Este es un comentario para JavaDoc */

6 .Sintaxis de los operadores lgicos y relacionales

Operaciones relacionales:

Revisando algunas definiciones matemticas, nos enteramos que los nmeros


conforman un conjunto ordenado. Cada uno tiene una posicin relativa. Sabemos que
el 2 "es menor que" el 4 y que el 6 "es ms grande que" el 1. Al comparar dos nmeros,
realizamos una funcin de relacin.

En java disponemos de los operadores relacionales para verificar si se cumple una


relacin. Por ejemplo el operador de equivalencia (==) nos devuelve un valor de
verdadero si los operandos son iguales. Estas operaciones comparan dos valores
numricos y devuelven un valor booleano.

5
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS
Operadores relacionales

Operador Utilizacin Resultado

> A>B verdadero si A es mayor que B

>= A >= B verdadero si A es mayor o igual que B

< A<B verdadero si A es menor que B

<= A <= B verdadero si A es menor o igual que B

== A == B verdadero si A es igual a B

!= A != B verdadero si A es distinto de B

Aqu tenemos un programa para ver el funcionamiento de los operadores.

No nos olvidemos de los char, que tambin participan. Podemos comparar caracteres,
pues internamente estn almacenados como nmeros.

6
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

Entre los booleanos solo se permiten los operadores de equivalencia, es igual (==) o es
distinto (!= )

Operadores lgicos

En Java disponemos de los operadores lgicos habituales en lenguajes de


programacin como son es igual, es distinto, menor, menor o igual, mayor, mayor o
igual, and (y), or (o) y not (no). La sintaxis se basa en smbolos como veremos a
continuacin y cabe destacar que hay que prestar atencin a no confundir == con =
porque implican distintas cosas.

El operador || se obtiene en la mayora de los teclados pulsando ALT GR + 1, es decir,


la tecla ALT GR y el nmero 1 simultneamente.

7
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS
Los operadores && y || se llaman operadores en cortocircuito porque si no se
cumple la condicin de un trmino no se evala el resto de la operacin. Por ejemplo:
(a == b && c != d && h >= k) tiene tres evaluaciones: la primera comprueba si la
variable a es igual a b. Si no se cumple esta condicin, el resultado de la expresin es
falso y no se evalan las otras dos condiciones posteriores.

En un caso como ( a < b || c != d || h <= k) se evala si a es menor que b. Si se cumple


esta condicin el resultado de la expresin es verdadero y no se evalan las otras dos
condiciones posteriores.

El operador ! recomendamos no usarlo hasta que se tenga una cierta destreza en


programacin. Una expresin como (!esVisible) devuelve false si (esVisible == true), o
true si (esVisible == false). En general existen expresiones equivalentes que permiten
evitar el uso de este operador cuando se desea.

ORDEN DE PRIORIDAD, PRELACIN O PRECEDENCIA

Los operadores lgicos y matemticos tienen un orden de prioridad o precedencia. Este


es un esquema general que indica el orden en que deben evaluarse en la mayora de
los lenguajes de programacin:

8
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

7. Defina Clase, instancia de clase, atributo, comportamiento, identidad,


constructor e identificadores.

Defina clase: abstraccin que define un tipo de objeto especificando qu propiedades


(atributos) y operaciones disponibles va a tener. Las clases en Java son bsicamente
una plantilla que sirve para crear un objeto. Si imaginsemos las clases en el mundo en
el que vivimos, podramos decir que la clase persona es una plantilla sobre cmo
debe ser un ser humano. Todos y cada uno de nosotros, los seres humanos, somos
objetos de la clase persona, ya que todos somos personas. La clase persona
contiene la definicin de un ser humano, mientras que cada ser humano es una
instancia u objeto de dicha clase.

Instancia de clase: Las instancias de clase representan los objetos que realmente
vamos a trabajar. En Java creamos los objetos por medio de la palabra "new", el objeto
nos representa algo especfico.

Atributo: Determinan una estructura de almacenamiento para cada objeto de la clase.


Los atributos son las caractersticas individuales que diferencian un objeto de otro y
determinan su apariencia, estado u otras cualidades. Los atributos se guardan en
variables denominadas de instancia, y cada objeto particular puede tener valores
distintos para estas variables.

Comportamiento: El comportamiento de los objetos de una clase se implementa


mediante funciones miembro o mtodos. Un mtodo es un conjunto de instrucciones
que realizan una determinada tarea y son similares a las funciones de los lenguajes
estructurados.

Del mismo modo que hay variables de instancia y de clase, tambin hay mtodos de
instancia y de clase. En el primer caso, un objeto llama a un mtodo para realizar una
determinada tarea, en el segundo, el mtodo se llama desde la propia clase.

Identidad: es un dato que hace diferente al objeto en cuestin de otros objetos.


Siguiendo el ejemplo del objeto Camioneta su estado es el color, su comportamiento

9
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS
son las acciones que realiza, o sea los mtodos transportar gente, acelerar y
frenar mientras que su identidad es el propio nombre del objeto.

Constructor: es un mtodo especial de una clase que se llama automticamente


siempre que se declara un objeto de esa clase. Su funcin es inicializar el objeto y sirve
para asegurarnos que los objetos siempre contengan valores vlidos.

Identificadores: Cmo se escriben los nombres de las variables, de las clases, de las
funciones, etc., es un asunto muy importante de cara a la comprensin y el
mantenimiento de cdigo. En la introduccin a los fundamentos del lenguaje Java
hemos tratado ya de los identificadores.

El cdigo debe de ser tanto ms fcil de leer y de entender como sea posible. Alguien
que lea el cdigo, incluso despus de cierto tiempo, debe ser capaz de entender lo que
hace a primera vista, aunque los detalles internos, es decir, cmo lo hace, precise un
estudio detallado.

8. Informe los tipos de clase

Existen tres tipos bsicas de clase: cerrados, dinmicas y estticas.

CLASE CERRADA: Todos los eventos y mtodos y propiedades estn definidas dentro
de la clase, as que no es posible agregrselos dinmicamente.

CLASE DINAMICA: En oposicin a las clases cerradas existe lo que se conoce como
clases dinmicas. Su principal caracterstica es que permite agregar en tiempo de
ejecucin , propiedades y mtodos a la clase, es decir, que yo puedo agregar una
nueva propiedad a la instancia de mi clase, aunque esta no haya sido definida
originalmente.

En cualquier caso, no es recomendable usar clases dinmicas a menos que sea


necesario, porque entre otras cosas, la verificacin de datos es menos estricta que en

10
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS
las clases cerradas, lo que hace que se pierda control sobre los datos de la
clase, hacindola susceptible de errores inesperados.

CLASE ESTATICAS: Por su parte, las clases estticas estn pensadas para contener
elementos (propiedades o mtodos) que no dependen directamente de un objeto para
su funcionamiento Cmo es eso? Veamos:
En varias ocasiones nos encontramos con que tenemos una funcin que puede ser
utilizada por distintos objetos, o en diferentes situaciones, que no estn relacionadas
con algn objeto especfico, puede ser el caso de una operacin matemtica, un
clculo, dibujar una forma geomtrica, etc. Sin las clases estticas la opcin sera:
Crear esta misma funcin en cada clase que utilizamos (copiar y pegar no es
reusabilidad). Pero esto es algo engorroso y poco prctico (qu pasa si queremos
agregar un nuevo parmetro a nuestra funcin o conseguimos una forma ms efectiva
de hacer lo mismo? Tendramos que reescribir el cdigo en cada clase donde lo hemos
usado y t no quieres hacer eso verdad?).
Un buen ejemplo de clases estticas es la clase Math, comn en ActionScript, Java,
.Net, etc. Esta clase se encarga de hacer una serie de operaciones matemticas a las
que slo les pasamos los parmetros que necesita. Otro ejemplo tpico sera una clase
que se encargara de dibujar objetos.

9. Describa el concepto de Modularizacin

Es la divisin de un problema en varios subproblemas que encapsulan operaciones y


datos con los cuales se busca separar en funciones lgicas los datos propios y datos
de comunicacin perfectamente especificados. Para que de esta manera sea ms fcil
dar solucin al problema.

La modularizacin impide la programacin redundante porque esta defin la tarea


como un patrn autnomo por lo cual se puede invocar desde cualquier parte del
cdigo lo cual permitir que la longitud del programa sea mucho menor.

11
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

10. Describa el concepto de Herencia

La herencia proviene del hecho de que la subclase contiene los atributos y mtodos de
la clase primaria. La principal ventaja de la herencia es la capacidad para definir
atributos y mtodos nuevos para la subclase, que luego se aplican a los atributos y
mtodos heredados. La herencia es la transmisin del cdigo entre unas clases y otras.

11. Describa el concepto de Polimorfismo

Es la posibilidad de definir clases diferentes que tienen mtodos o atributos designados


de forma idntica, pero que se comportan de manera diferente. Este concepto puede
ser aplicado tanto a funciones como a tipos de datos. As surgen los conceptos de
funciones polimrficas que pueden evaluarse o ser aplicadas a diversas clases de
datos de forma indistinta y tipos polimrficos, son los tipos de datos que contienen al
menos un elemento cuyo tipo no est especificado.

12. Describa el concepto de Encapsulamiento

Es el proceso de almacenar en una misma seccin los elementos de una abstraccin


que constituyen su estructura y su comportamiento; sirve para separar el interfaz
contractual de una abstraccin y su implantacin.

Existen 3 niveles e acceso para el encapsulamiento:


Publico: todos pueden acceder a datos
Protegido: solamente son accesibles dentro de su clase y subclase
Privado: se pueden declarar miembros accesibles solo para la propia clase.

12
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

13. Informe cmo convertir un String a entero en Java

StringnumCadena="1";
int numEntero = Integer.parseInt(numCadena);
Si los espacios vienen al principio o al final, con un simple trim bastar para
eliminarlos, por ejemplo ("1")
numCadena.trim();
Si tenemos espacio entre los nmeros deberamos usar el mtodo replaceAll (" 1 3 45
6")
numCadena.replaceAll(" ", "");

14. Defina el concepto de mtodo y realice un ejemplo constructor

Mtodo es el algoritmo asociado a un objeto (o a una clase de objetos),cuya ejecucin


se desencadena tras la recepcin de un mensaje.
Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. Un
mtodo puede producir un cambio en las propiedades del objeto, o la generacin de un
"evento" con un nuevo mensaje para otro objeto del sistema.
Categorias de metodos: inicializadores, setters, operadores, destructores, getters,
visualizadores, constructores, otros.

METODO CONSTRUCTOR: Es un mtodo que inicializa un objeto inmediatamente


despus de su creacin, tiene exactamente el mismo nombre de la clase en la que
residen, una vez definido se llama automticamente al constructor despus de crear el
objeto, sin indicacin de tipo devuelto ( ni siquiera void).
Ejemplo de constructor: En un constructor es frecuente usar un esquema de este tipo:
/* Ejemplo - aprenderaprogramar.com */
public MismoNombreQueLaClase (tipo parmetro1, tipo parmetro2 , tipo parmetro
n){
campo1 = valor o parmetro;

13
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS
campo2 = valor o parmetro;
.
.
.
campo n = valor o parmetro;
}
Nota: La inicializacin de campos y variables es un proceso muy importante. Su mala
definicin es fuente de problemas en el desarrollo de programas. Como regla de buena
programacin, cuando crees campos o variables, procede de forma inmediata a definir
su inicializacin.

Los constructores tienen el mismo nombre que la clase en la que son definidos y nunca
tienen tipo de retorno, ni especificado ni void. Tenemos aqu un aspecto que nos
permite diferenciar constructores de mtodos: un constructor nunca tiene tipo de
retorno mientras que un mtodo siempre lo tiene. Es recomendable que en un
constructor se inicialicen todos los atributos de la clase aunque su valor vaya a ser nulo
o vaco. Si un atributo se quiere inicializar a cero (valores numricos) siempre lo
declararemos especficamente: nombreAtributo = 0;. Si un atributo se quiere inicializar
a contenido nulo (atributos que son objetos) siempre lo declararemos especficamente:
nombreAtributo = null;. Si un atributo tipo texto se quiere inicializar vaco siempre lo
declararemos especficamente: nombreAtributo = ;. El motivo para actuar de esta
manera es que declarando los atributos como nulos o vacos, dejamos claro que esa es
nuestra decisin como programadores. Si dejamos de incluir uno o varios campos en el
constructor puede quedar la duda de si hemos olvidado inicializar ese campo o inducir
a pensar que trabajamos con malas prcticas de programacin.
/* Ejemplo - aprenderaprogramar.com */
public class Taxi { //El nombre de la clase

private String ciudad; //Ciudad de cada objeto taxi


private String matricula; //Matrcula de cada objeto taxi
private String distrito; //Distrito asignado a cada objeto taxi

14
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS
private int tipoMotor; //Tipo de motor asignado a cada objeto taxi. 0 =
desconocido, 1 = gasolina, 2 = diesel

//Constructor: cuando se cree un objeto taxi se ejecutar el cdigo que incluyamos en


el constructor
public Taxi (String valorMatricula, String valorDistrito, int valorTipoMotor) {
ciudad = "Mxico D.F.";
matricula = valorMatricula;
distrito = valorDistrito;
tipoMotor = valorTipoMotor;
} //Cierre del constructor

//Mtodo para obtener la matrcula del objeto taxi


public String getMatricula () { return matricula; } //Cierre del mtodo

//Mtodo para obtener el distrito del objeto taxi


public String getDistrito () { return distrito; } //Cierre del mtodo

//Mtodo para obtener el tipo de motor del objeto taxi


public int getTipoMotor () { return tipoMotor; } //Cierre del mtodo

} //Cierre de la clase

15. Qu funcin tiene el paquete Swing en Java y describa sus principales


caractersticas

El paquete Swing es parte de la JFC (Java Foundation Classes) en la plataforma Java.


La JFC provee facilidades para ayudar a la gente a construir GUIs. Swing abarca
componentes como botones, tablas, marcos, etc...

Las componentes Swing se identifican porque pertenecen al paquete javax.swing.

15
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS
Las componentes de Swing utilizan la infraestructura de AWT, incluyendo el
modelo de eventos AWT, el cual rige cmo una componente reacciona a eventos tales
como, eventos de teclado, mouse, etc... Es por esto, que la mayora de los programas
Swing necesitan importar dos paquetes AWT: java.awt.* y java.awt.event.*.
Estructura bsica de una aplicacin Swing.
Una aplicacin Swing se construye mezclando componentes con las siguientes reglas.
Debe existir, al menos, un contenedor de alto nivel (Top-Level Container), que
provee el soporte que las componentes Swing necesitan para el pintado y el manejo de
eventos.
Otras componentes colgando del contenedor de alto nivel (stas pueden ser
contenedores o componentes simples).
Ejemplo 1:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class HolaMundoSwing {


public static void main(String[] args) {
JFrame frame = new JFrame("HolaMundoSwing");
final JLabel label = new JLabel("Hola Mundo");
frame.getContentPane().add(label);

//frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.addWindowListener(new java.awt.event.WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
}
);

16
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS
frame.pack();
frame.setVisible(true);
}
}

Descripcin del ejemplo.


En las primeras lneas se importan los paquetes necesarios.
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

Luego se declara la clase HolaMundoSwing y en el mtodo main se setea el top level


container:
public class HolaMundoSwing {
public static void main(String[] args) {
JFrame frame = new JFrame("HolaMundoSwing");
...
frame.pack();
frame.setVisible(true);
}
}

En el ejemplo, slo hay un contenedor de alto nivel, un JFrame. Un frame


implementado como una instancia de la clase JFrame es una ventana con
decoraciones, tales como, borde, ttulo y botones como conos y para cerrar la ventana.
Aplicaciones con un GUI tpicamente usan, al menos, un frame.
Adems, el ejemplo tiene un componente, una etiqueta que dice "Hola Mundo".
final JLabel label = new JLabel("Hola Mundo"); //construye el JLabel.
frame.getContentPane().add(label); //agrega el label al frame.

Para que el botn de cerrar cierre la ventana, hay dos opciones:

17
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //JDK 1.3+

frame.addWindowListener(new java.awt.event.WindowAdapter(){ //versiones


anteriores
public void windowClosing(WindowEvent e){
System.exit(0);
}
}
);

16. Consultar la estructura y sintaxis de cmo funcionan las excepciones en


Java.
En Java los errores en tiempo de ejecucin se denominan excepciones, y esto ocurre
cuando se produce un error en alguna de las instrucciones de nuestro programa.
Cuando se produce una excepcin se muestra en la pantalla un mensaje de error y
finaliza la ejecucin del programa.
Cuando en Java se produce una excepcin se crear un objeto de una determina clase
dependiendo del error que mantendr la informacin sobre el error producido y nos
proporcionar los mtodos necesarios para obtener dicha informacin. Estas clases
tienen como clase padre la clase Throwable, por tanto se mantiene una jerarqua en las
excepciones. A continuacin mostramos algunas de las clases para que nos hagamos
una idea de la jerarqua que siguen las excepciones, pero existen muchsimas ms
excepciones que las que mostramos:

18
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS
Veamos ahora la estructura del bloque try/catch/finally:

Try
{
//Cdigo que puede provocar errores
}
Catch(Tipo1 var1)
{
//Gestin del error var1, de tipo Tipo1
}
[

Catch(TipoN varN)
{
//Gestin del error varN, de tipo TipoN
}]
[
Finally
{
//Cdigo de finally
}
]
Como podemos ver es obligatorio que exista la zona try, o zona de pruebas, donde
pondremos las instrucciones problemticas. Despus vienen una o ms zonas catch,
cada una especializada en un tipo de error o excepcin. Por ltimo est la zona finally,
encargada de tener un cdigo que se ejecutar siempre, independientemente de si se
produjeron o no errores.

Se puede apreciar que cada catch se parece a una funcin en la cul slo recibimos un
objeto de un determinado tipo, precisamente el tipo del error. Es decir slo se llamar al
catch cuyo argumento sea coincidente en tipo con el tipo del error generado

19
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

3 Anlisis de requisitos del proyecto Una vez elegida la propuesta a


desarrollar, entre los compaeros del grupo colaborativo debern
disear el Anlisis de requisitos del proyecto.

Anlisis de requisitos del proyecto.

Descripcin del Problema:

En la Universidad Nacional Abierta y a Distancia UNAD se cuenta con el departamento


de registro y control el cual se encarga de la matrcula de los estudiantes, el cual est
constituido por cinco funcionarios, quienes son los nicos con acceso al sistema.
Actualmente la universidad solo cuenta con 8 estudiantes matriculados. Tambin
intervienen en el proceso otros actores, sin embargo pensando en el crecimiento de la
institucin se requiere una aplicacin que permita realizar de forma automatizada los
siguientes procesos:

Matrcula de Estudiantes.
Consulta de Estudiantes.
Eliminar un estudiante.
Consulta de Programas.
Reportes.
Finalmente al ejecutar la aplicacin, esta debe solicitar un password y Login para
garantizar la seguridad de la aplicacin y el acceso solo a personal autorizado.

Modelo caso de usos:

Actores:

SISTEMA DE
REGISTRO Y
CONTROL
Usuario Base de datos
20
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

ACTORES PRINCIPALES: Los actores principales son aquellos que tiene una funcin
principal en este caso, est el usuario que es el encargado de hacer las consultas y
adquirir un servicio.

ACTORES SECUNDARIOS: Y el computador que es el que genera la informacin por


medio de la base de datos, y el que presta el servicio Sera actor secundario.

Casos de usos:

El usuario como actor principal est en la disponibilidad de entrar a la plataforma en


ingresar al sistema con el fin de realizar la consulta que sea de su agrado, ya que por
medio de l, el sistema desglosa la plataforma, se registra como usuario nuevo o
Antiguo.

Documentacin en modelo caso de usos:

Caso de uso usuario

actores primario

Tipo

propsito Ingreso de los aspirantes y estudiantes para consultar los programas


acadmicos que ofrece la universidad.

21
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

Resumen

precondiciones

Flujo
Principal

Subflujos

Excepciones

Se requiere un programa que acceda


registrar un estudiante con sus datos
bsicos, as como buscar y eliminarlos
segn se requiera, de igual manera se
necesita que se pueda consultar los
programas. Tambin debe permitir
generar reportes sobre estudiantes
vinculados a un programa, retirados, y
estudiantes activos en un programa
acadmico.

Se solicita que la aplicacin con la


Definicin del Problema.
seguridad de un ingreso con login y
password de personal autorizado y las
contraseas no deben tener caracteres
especiales.

Se solicita una aplicacin para automatizar el


registro y control de matrculas de los

22
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

estudiantes de la universidad Nacional Abierta


y a Distancia.

Objetivo General.

- Generar el proceso de inscripcin de


estudiantes
- Permitir la consulta de estudiantes
- El programa debe permitir consultar los
programas, y generar reportes de
estudiantes
Objetivos Especficos. - Lograr una seguridad adecuada al
ingreso

- Inscripcin de estudiantes con sus datos


personales (Nombre, Telfono,
Identificacin, Direccin y telfono y
programa al cual est inscrito).
- Consulta de estudiantes ingresando su
identificacin o programa al que
Requisitos Funcionales pertenece, as como la posibilidad de
eliminarlo.
- Consultar los programas, con su nmero
de inscritos, de acuerdo los programas
nombrados.
- Reportes de estudiantes vinculados a un
programa determinado, estudiantes

23
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

retirados, y activos.

Requisitos no funcionales. - Seguridad adecuada al ingreso en el


sistema con usuario y clave evitando
caracteres especiales.

Modelo de Interfaces:

Se hace una breve descripcin de como se ve la plataforma, al ingresar el usuario


como actor principal

Registro y control UNAD

USUARIO

Consulta de Programas.

Matrcula de Estudiantes.

Consulta de Estudiantes

Eliminar un estudiante.

Reportes

24
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

Actores y Casos de Uso:

Se hace una descripcin de lo que necesita los actores para que puedan ingresar el
servicio y generar su matrcula.

Actores:

ACTOR USUARIO

Caso de uso Ingresar Usuario

Consulta Programa

Matricula de estudiantes

Eliminar a un estudiante
Consulta de un estudiante
Tipo Primario

Descripcin Es actor principal es el encargado de ingresar al sistema.

ACTOR COMPUTADOR

Caso de uso Validar-usuario

Validar- Consulta programa

Validar- Matricula de estudiantes

Validar-Eliminacin de un estudiante

Validar- registrar estudiantes

Tipo Secundario

Descripcin El actor secundario es el encargado de validar la informacin del

25
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

usuario, pero independiente del sistema principal.

Casos de uso: realizar el ingreso del usuario.

Al ingresar a la plataforma encontramos un icono que pregunta Nombre del estudiante


o usuario, contrasea y la opcin Aceptar

Caso de uso Ingreso de Usuario

Actores Usuario ,Base de Datos

Tipo inclusin

Propsito Ingresar el estudiante que requiere de un servicio.

Resumen Se ingresa con el nombre del estudiante, contrasea y se le da la


opcin Aceptar.

Precondiciones ?

Flujo Principal El estudiante ingresa y encuentra la opcin de Usuario y contrasea


como nica opcin, y al dar clic en Aceptar da paso a los servicios
que ofrece la plataforma.

Subflujos

26
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

Excepciones

Modelo del Dominio del Problema

El usuario estar en la capacidad de hacer sus consultas y procesos por medio de la


pgina de la universidad a travs de internet.

Identificacin de clases:

Se encuentran las diferentes consultas y procesos que se pueden realizar de forma


automatizada, en donde se puede ingresar con el nombre la persona o usuario que
desea adquirir los servicios y lo dirigimos a una pantalla principal en donde encontraran
los siguientes servicios:

Matrcula de Estudiantes: se realizara el proceso de matrcula del estudiante.


Consulta de Estudiantes: Consulta mediante identificacin o Programa al cual
pertenece.
Eliminar un estudiante: Eliminar un estudiante de la base de datos de inscritos.
Consulta de Programas: Mirar los diferentes programas que ofrece la Universidad y
diferentes los inscritos a estos programas.
Reportes: La aplicacin debe permitir realizar reportes sobre los estudiantes vinculados
a un programa, estudiantes que se han retirado y estudiantes activos en un programa
acadmico determinado.
Finalmente al ejecutar la aplicacin, solicita usuario y contrasea para garantizar la
seguridad de la aplicacin y el acceso solo a personal autorizado.

27
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

CONCLUSIONES

La programacin orientada a objetos nos permite conocer otras formas de ver la


programacin basndonos en la perspectiva que tengamos de nuestro mundo hecho
en base a objetos que se interrelacionan.

Tambin con este nuevo paradigma podemos hacer programas ms complejos pero
sencillos de entender lo cual tambin permiten el reutilizamiento de cdigos.

28
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)
ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA
PROGRAMACION ORIENTADA A OBJETOS

BIBLIOGRAFIA

Weitzenfeld, A. (2005). Programacin Orientada a Objetos con Java. In Ingeniera de


Software Orientada a Objetos con UML, Java e Internet (p. [129]). Mexico City:
Cengage Learning. Recuperado de:

http://bibliotecavirtual.unad.edu.co:2081/ps/i.do?p=GVRL&sw=w&u=unad&v=2.1&it=r&i
d=GALE%7CCX3004300041&asid=320ab4f95cd384a1b4ef75c7eb74faf8

Weitzenfeld, A. (2005). Modelo de Requisitos. In Ingeniera de Software Orientada a


Objetos con UML, Java e Internet (pp. [195]-197). Mexico City: Cengage Learning.
Recuperado de:

http://bibliotecavirtual.unad.edu.co:2081/ps/retrieve.do?tabID=&searchType=BasicSear
chForm&userGroupName=unad&inPS=true&prodId=GVRL&contentSet=GALE&docId=
GALE|CX3004300051

Weitzenfeld, A. (2005). Modelo de Anlisis. In Ingeniera de Software Orientada a


Objetos con UML, Java e Internet (p. [253]). Mexico City: Cengage Learning.
Recuperado de:

http://bibliotecavirtual.unad.edu.co:2081/ps/retrieve.do?resultListType=RELATED_DOC
UMENT&searchType=BasicSearchForm&userGroupName=unad&inPS=true&contentS
egment=&prodId=GVRL&isETOC=true&currentPosition=&docId=GALE|CX3004300068

29

Potrebbero piacerti anche