Está en la página 1de 6

UNIVERSIDAD DE CUNDINAMARCA

Seccional Chía
Ingeniería de Sistemas

TALLER PROGRAMACION EN JAVA

Objetivo:
Afianzar los conceptos claves de programación orientada a objetos mediante la
realización de ejercicios prácticos basados en situaciones problemáticas cotidianas.

Al finalizar el taller los estudiantes estarán en capacidad de:

Entender la diferencia clara y substancial entre clase y el objeto.


Diseñar y construir programas usando el enfoque orientado a objetos en JAVA.

Lo clave de la metodología orientada a objetos.

La clase define todo lo que puede ser, pero es el objeto el que la hace realidad.
Las operaciones que la clase ofrece, se denominan servicios, métodos, funciones o
procedimientos.
La firma de los métodos está formado por Nombre - número de parámetros, orden
de los parámetros y tipo de retorno.
Para colocar los métodos de las clases normalmente se toman verbos, dado que
estos representan las acciones que las clases ofrecen.

ASPECTOS TEÓRICOS A TENER EN CUENTA

Forma general de los métodos en las clases: nombre (parámetros): tipo


1. nombre: corresponde a la acción que la clase ofrece.
2. (Parámetros): Se colocan con la misma estructura de los atributos, separados unos
de otros por comas, representan la información que se envía desde fuera de la clase y

Rodrigo Aranda Fernández – Lógica y Algoritmos 1


UNIVERSIDAD DE CUNDINAMARCA
Seccional Chía
Ingeniería de Sistemas

que es necesaria para su procesamiento. Los atributos se consideran variables locales


cuyo ámbito es solo el servicio en cuestión.
3. Tipo: Corresponde a un valor que puede ser primitivo o un objeto ej. (int, double,
String , Cualquier clase del modelo...) o void. void significa que el servicio no retorna
nada después de su llamado.

En el lenguaje Java, los métodos se expresan así:

tipoMetodo nombre(tipo para1, tipo para2, tipo para3...){


return tipoMétodo;
}

La palabra return solo aplica para funciones nunca para los procedimientos.

Un método puede, o no tener parámetros, cuando no tiene se le coloca ()

De una clase pueden ser generados n objetos.


No puedo usar un objeto si este no ha sido instanciado
ClaseOrigen variableInstacia = new Constructor();
Mediante variableInstacia puedo acceder a los atributos y métodos que la clase
ofrece, cada objeto es un mundo independiente del otro que maneja mediante su
estado y su identidad el control de los datos.

Para dar solución a un planteamiento, mediante las técnicas orientadas a objetos,


es muy prudente:

1. Entender claramente el problema y los por menores del mismo indagando por lo que
se desconoce y recurriendo a la fuente de datos más clara.
2. Crear un diseño de las clases que conformarán la solución y los elementos que
estas contemplarán pensando en abstracción y no en implementación.
3. Realizar una revisión de lo propuesto con alguien de mayor experiencia o con
alguien que igual pueda dar su opinión.
4. Aplicar los ajustes al diseño planteado usando principios de la orientación a objetos
5. Codificar en el lenguaje seleccionado la solución propuesta, comenzando por lo más
importante y utilizando los estándares de codificación vistos en clase.

Rodrigo Aranda Fernández – Lógica y Algoritmos 2


UNIVERSIDAD DE CUNDINAMARCA
Seccional Chía
Ingeniería de Sistemas

6. Probar y hacer ajustes según sean necesarios.

Teniendo presente los conceptos de la programación orientada a objetos y aplicando


análisis sistémico, crear soluciones orientadas a objetos para los siguientes
planteamientos.

EJERCICIOS

1. Desarrollar un sistema para una centralita telefónica en la cual se van a ir registrando


las llamadas. Para ello, la centralita tiene que registrar el número de llamadas que se
realizan así como el coste total de todas las llamadas realizadas. Las llamadas se irán
mostrando por pantalla según se vayan contabilizando. Existen dos tipos de llamadas:
a teléfono fijo que cuestan $ 200 COP el minuto y celular, que dependiendo de la franja
horaria cuestan por minuto: $ 200 COP en la franja 1, $150 COP en la franja 2 y $ 100
COP en la franja 3. Los datos de cada llamada son: el número de origen de la llamada,
el número de destino y su duración en minutos.

2. Su equipo de desarrollo ha sido contratado para implementar un portal de ventas


denominado seletiene.com. A través de la interfaz gráfica de usuario este portal
proporciona a sus clientes un catálogo de productos, un carrito de compras y múltiples
esquemas de envío. El portal permite vender productos y bolsas de productos. Cada
producto o bolsa de producto viene en tres presentaciones que son gama alta, gama
media, gama baja. Las bolsas de productos son ofertas de productos especiales de la
misma gama que se empaquetan por demanda. Cada bolsa debe tener mínimo 3
productos de los ofrecidos para la bolsa. Al hacer la compra el usuario puede elegir
tres formas de pago que van de acuerdo al esquema de entrega.

3. Un instituto dedicado a orientar cursos de inglés, francés y portugués, desea mantener


la información relacionada con: alumnos inscriptos en cada curso y la forma y plan de
pago elegido por cada uno. De los cursos es importante conocer información respecto
al nombre del curso, contenido, duración, nivel, fecha de inicio, fecha de fin, matrícula
y precio. También la institución necesita la cédula, apellido y nombre de cada alumno,
dirección, teléfono, ocupación. Las formas de pago propuestas por la institución son
tarjeta de crédito, efectivo o cheque con fecha no mayor a 30 días y los planes de pago
son: 1, 2 o 3 cuotas para cualquiera de los cursos.

4. Una compañía dedicada a la explotación minera, necesita administrar las órdenes de


trabajo (OT) para el mantenimiento de los distintos equipos o maquinarias que trabajan
en la línea de producción. Dichas órdenes se clasifican en OT Correctivas y
Preventivas. Las primeras se crean cada vez que se produce un desperfecto y se
realiza una reparación, registrando en ella el equipo sobre el que se realizó la

Rodrigo Aranda Fernández – Lógica y Algoritmos 3


UNIVERSIDAD DE CUNDINAMARCA
Seccional Chía
Ingeniería de Sistemas
reparación y las piezas reemplazadas (sí fue necesario). Las OT preventivas se
crean para registrar las tareas programadas, y tienen asociadas a ellas, además del
equipo sobre el que se realizarán dichas tareas, un programa en el que se indica la
planificación de esas tareas. De cada OT se debe guardar el número de orden, una
descripción, la fecha en que es añadida, la fecha de planificación y la fecha de cierre
(fecha efectiva de realización de la OT), que puede o no coincidir con la fecha de
planificación.

5. Crear una clase Persona, con atributos nombre, apellido y teléfono. Controlar que el
teléfono solo acepte 9 dígitos. Crear una clase Cuenta, con atributos numeroCuenta,
saldo y propietario. El propietario es un objeto tipo Persona. Crear un constructor con
parámetros y otro sin parámetros, métodos accesorios y toString para estas clases.
Controlar que el saldo de la cuenta no debe ser menor que 0. Crear un método llamado
transacción que ingrese como parámetros cantidad y tipoTransaccion;
tipoTransaccion es “retiro” o “deposito”. Si es un retiro, la cantidad se resta del saldo,
y si es deposito la cantidad se incrementa al saldo. El método transacción debe
imprimir el tipo de transacción y el nuevo saldo. Crear en una clase llamada Principal,
dos cuentas pertenecientes a dos personas distintas y hacer un depósito y un retiro
en cada cuenta. Imprimir los valores de las personas, propietarios y transacciones.

6. Realizar un sistema de Control de Alquiler de Vehículos: El sistema debe tener un


menú:

Ingreso de Vehículos -> Placa del Vehículo + Nombre de la Persona que Alquila + Km
actual del vehículo (INTEGER).
Buscar -> Los vehículos cuyo KM sea mayor a 20 y menor a 100
Listar -> Todo los vehículos Ingresados.

NOTA: Trabajar con un ingreso de 10 Vehículos, Los reportes de Buscar y Listar deben
ser en columnas,
Ej.: Placa: GHJ456 Km: 12 Persona: Julio Pérez

Rodrigo Aranda Fernández – Lógica y Algoritmos 4


UNIVERSIDAD DE CUNDINAMARCA
Seccional Chía
Ingeniería de Sistemas
7. Una empresa de consultoría usa una agenda para mantener datos de
profesionales. De cada profesional se registra su nombre, apellido, número de
matrícula y profesión. De las distintas profesiones interesa registrar un nombre y una
descripción. Además, se mantiene información de los puntos de contacto de cada
profesional. Estos puntos de contacto representan formas de ponerse en contacto con
el profesional. En la agenda se registran tres tipos de puntos de contacto: dirección,
teléfono y e‐mail. Los puntos de contacto se clasifican en primarios y secundarios
según la probabilidad de encontrar al profesional en dicho punto.

8. Se requiere modelar una casa con muchas bombillas, de forma que cada bombilla se
puede encender o apagar individualmente. Para ello haremos una clase Bombilla con
una variable privada que indique si está encendida o apagada, así como un método
que nos diga si una bombilla concreta está. Cada objeto Bombilla se enciende y se
apaga individualmente; pero sólo responde que está encendida si su interruptor
particular está activado y además hay luz general. El código Java tiene esta estructura.
Para el caso, codifique en java el programa que cumpla con los requisitos y corrija la
notación de las clases y métodos acorde a las buenas prácticas.

Rodrigo Aranda Fernández – Lógica y Algoritmos 5


UNIVERSIDAD DE CUNDINAMARCA
Seccional Chía
Ingeniería de Sistemas

PRESENTACION

Fecha máxima de presentación: 22 de mayo de 2020


Se sugiere realizar entregas parciales
Hora: 1:00 pm
La presentación y sustentación del trabajo es INDIVIDUAL.

Evidencia esperada: Análisis orientado a objetos de cada ejercicio.


Código fuente de cada ejercicio siguiendo las practicas recomendadas por SUN
para la notación de clases, atributos, métodos y comentarios.

Se tomaran 3 evidencias con un porcentaje ponderado igual.


De conocimiento: Se hará un test de conocimientos sobre el trabajo desarrollado.
De desempeño: se pedirá modificar un criterio a cualquiera de los problemas y se
observará el funcionamiento si cumple o no.
De producto: Los casos implementados que deben tener estándares mínimos
se codificación y deben funcionar acorde al problema que se plantea y conforme
a los conceptos trabajados en clase.

Rodrigo Aranda Fernández – Lógica y Algoritmos 6

También podría gustarte