Taller POO en Java

GESTIÓN DE FORMACIÓN PROFESIONAL INTEGRAL - CSF TECNÓLOGO ANÁLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIÓN – ADSI ARQUIT

Views 219 Downloads 54 File size 265KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

GESTIÓN DE FORMACIÓN PROFESIONAL INTEGRAL - CSF TECNÓLOGO ANÁLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIÓN – ADSI ARQUITECTURA DE SOFTWARE – TALLER POO JAVA

CONSIDERACIONES Para resolver la prueba, el aprendiz debe leer y analizar completa y detenidamente cada caso de estudio planteado; los entregables son: ➢

Diagrama de Casos de Uso (1 por cada ejercicio)



Diagrama de Clases (1 por cada ejercicio).



Diagrama de secuencia (1 por cada ejercicio)



Codificación de cada ejercicio, de acuerdo a lo modelado.

El aprendiz para este taller necesita conocer: ➢

UML (Lenguaje de Modelamiento Unificado).



Manejo de herramientas CASE que le permitan desarrollo de los diferentes diagramas del caso de estudio propuesto.



Lenguaje de modelamiento orientado a objetos.



Notación de modelado de diagramas orientados objetos.



Conocimientos básicos de análisis y diseño de sistemas de información.



Programación estructurada.



Programación Orientada a Objetos



Lenguaje de programación Java.

CONTEXTUALIZACIÓN Objetivo Afianzar los conceptos claves de clase, atributos, servicios y objetos mediante la realización de ejercicios prácticos.

Al finalizar la clase los aprendices estarán en capacidad de: ➢

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



Construir sistemas orientados a objetos a problemas simples.



Diseñar y construir programas orientados a objetos para ejercicios planteados.

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á formada por Nombre - número de parámetros, orden de los parámetros y tipo de retorno.

GRUPO DE INSTRUCTORES

GESTIÓN DE FORMACIÓN PROFESIONAL INTEGRAL - CSF TECNÓLOGO ANÁLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIÓN – ADSI ARQUITECTURA DE SOFTWARE – TALLER POO JAVA 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 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 (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 (servicios) se expresan así: tipoDato nombreMetodo(tipo param1, tipo param2, tipo param3...){ return tipoDato; } 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. 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. 5. Codificar en el lenguaje seleccionado la solución propuesta, comenzando por lo más importante. 6. Probar y hacer ajustes según sean necesarios. Teniendo presente los conceptos de clase, atributo, método, objeto, instancia y constructor. Crear soluciones orientadas a objetos para los siguientes planteamientos.

GRUPO DE INSTRUCTORES

GESTIÓN DE FORMACIÓN PROFESIONAL INTEGRAL - CSF TECNÓLOGO ANÁLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIÓN – ADSI ARQUITECTURA DE SOFTWARE – TALLER POO JAVA CASOS DE ESTUDIO 1. Un turista se registra en un hotel ubicado en una dirección, ciudad y barrio. Todos los hoteles tienen al menos un número de teléfono. Las habitaciones del hotel son de distintos tipos: simples, dobles y suite. Es importante registrar las características que tiene cada habitación, identificadas por un número; tales como baño privado, teléfono y calefacción. El administrador solicita al huésped su nombre, dirección, profesión y estado civil. El huésped puede solicitar que lo despierten en un horario determinado. Al día siguiente, en la confitería puede desayunar café con leche, te acompañado de pan, y beber lo que desee (gaseosa, agua mineral con o sin gas). Un turista puede reservar telefónicamente una habitación desde una fecha hasta otra determinada. 2. Construir un sistema que represente a un sistema de seguridad en el cual se pueda ingresar nombre de usuario y contraseña, debe existir un método para validar si la contraseña ingresada es correcta y un método para cambiar la contraseña actual por otra nueva, el sistema deja cambiar la contraseña siempre y cuando esta no haya sido usada recientemente, dado que el sistema almacena las últimas cuatro usadas. 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. Se requiere diseñar e implementar un sistema para una escuela de futbol el cual permita llevar el control de inscripciones de estudiantes y participaciones en torneos de cada uno de los equipos que ésta puede tener. Se sabe que cada equipo tiene un entrenador, un masajista y un máximo de 26 futbolistas. De cada uno de ellos se necesita conocer sus datos personales y de contacto y específicamente, del entrenador la especialidad y el tiempo que lleva en la escuela; del masajista el título y los años de experiencia; y del futbolista el dorsal y la posición en la que juega. Los torneos están formados por varios partidos y cada partido por dos equipos y un marcador. El sistema debe permitir el registro de nuevos estudiantes, entrenadores y masajistas, poder asignarlos a un equipo de la escuela, registrar los datos de nuevos torneos y los resultados de los partidos en los que participen los equipos de la escuela 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. Implementa el siguiente nodo alumno, para una lista enlazada simple. De contener un método que permita ingresar: nombre, edad, materia.

GRUPO DE INSTRUCTORES

GESTIÓN DE FORMACIÓN PROFESIONAL INTEGRAL - CSF TECNÓLOGO ANÁLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIÓN – ADSI ARQUITECTURA DE SOFTWARE – TALLER POO JAVA En el método registrarAlumno se debe ingresar nombre, edad (la edad no puede ser inferior a 17 años) y las pruebas que el alumno rinde son 5 pruebas en total. Luego imprimir el promedio, nota más baja y la nota más alta, en el caso que el promedio sea inferior a 4 lanzar un mensaje que diga que el alumno reprobó la asignatura. Luego tiene que mostrar todo los alumnos ingresados con los promedios respetivos y quien reprobó y quién no, a través de un método mostrarAlumnos();

PRESENTACIÓN ➢ ➢ ➢ ➢



Fecha máxima de entrega: Definido en clase Lugar: CSF – Piso 7 Hora: 7:00 a.m. Forma de entrega Se deben entregar todos los diagramas realizados junto a un cuadro con el codigo fuente de cada uno de los ejercicios (si son varias clases dividir los cuadros de manera muy organizada y clara), el documento debe ser en formato PDF con normas APA. Junto al PDF se debe entregar un archivo .RAR con todos los ejercicios exportados de Netbeans separado en carpetas. Consideraciones: La presentación y sustentación del trabajo es INDIVIDUAL. Se tomarán 2 evidencias con un porcentaje de cada uno del 50%. ✓ ✓

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 de codificación y deben funcionar acorde al problema que se plantea.

GRUPO DE INSTRUCTORES