Hola te saluda Ubaldo Acosta.
Bienvenidos nuevamente a este curso de programación con.
A continuación vamos a describir el laboratorio final de este curso.
Están listos.
Vamos
diagrama de clases de laboratorio final.
En este laboratorio al final vamos a crear un ejercicio que simule un catálogo de películas para este
ejercicio.
Vamos a almacenar la información del catálogo de películas en un archivo de texto y este archivo lo
vamos a depositar en una carpeta definida por nosotros.
Por ejemplo la carpeta hace dos puntos diagonal inversa catálogo de películas y el archivo lo depositamos
dentro de esa carpeta y el archivo se puede llamar películas punto txt.
Vamos a crear varios paquetes cada uno con tareas específicas a desarrollar en el programa El primer
paquete que vamos a crear es el paquete decepciones y similar a la lección decepciones vistas en el
curso según mostramos en este diagrama.
Vamos a crear el paquete de MX con G.M películas excepciones y dentro de este paquete vamos a crear
las excepciones acceso a datos X escritura datos X y lectura datos X.
Posteriormente vamos a crear el paquete con las clases de Domaine en este caso de paquete MX punto com
punto G.M. punto películas punto Domain y dentro de este paquete definimos la clase película así que
estas van a ser las clases de dominio de nuestro sistema.
Posteriormente vamos a crear el paquete MX con G.M. punto películas punto datos y este paquete va a
contener lo siguiente Por un lado va a tener la interfase acceso datos y por otro lado una clase que
implemente dicha interfase llamada acceso datos.
El objetivo de estas clases es agregar la funcionalidad para interactuar con el archivo donde se va
a guardar la información del catálogo de películas como siguiente paso creamos el paquete de negocio
y este paquete incluye la interfaz de catálogo películas y también una clase que implementa dicha interfase
llamado catálogo películas Impy.
Este paquete lo vamos a utilizar para aplicar las reglas de negocio de nuestra aplicación y finalmente
vamos a crear un paquete llamado CPJ laboratorio final el cual significa curso de programación Java
y también vamos a crear una clase que va a contener el método main llamada CPJ laboratorio final.
A continuación vamos a ver a más detalle cada uno de los paquetes de la aplicación catálogo de películas
a desarrollar
clase de película apuntó IAVA.
Esta clase nos servirá para representar el objeto película en esta aplicación vamos a dejar muy simple
la definición de este objeto.
Sin embargo podría tener más atributos y hacer más compleja esta aplicación pero el objetivo es que
podamos desarrollar esta aplicación con la estructura planteada y no agregar más complejidad de la necesaria
para aplicar los conceptos estudiados a lo largo de este curso.
Por ello este objeto se debe codificar con lo indicado en el diagrama de clase mostrado así que esta
clase contiene un atributo llamado nombre de tipo string y podemos observar que es de tipo privado y
también va a contener dos constructores el constructor vacío de tipo públic y el constructor de un argumento
de tipo string llamado nombre este es el argumento que va a recibir este constructor.
Y también es de tipo público.
También definimos los métodos jet set para el atributo de nombre y agregamos el método autodestruye
a esta clase el cual internamente va a imprimir el atributo de nombre y las responsabilidades de esta
clase es que representa a los objetos película utilizados en la aplicación catálogo de películas
como siguiente paso vamos a ver la interfase acceso a datos punto IAVA esta interfase define los métodos
para interactuar con el archivo que administrará el catálogo de películas.
La clase.
Acceso a Datos Inc. es la que finalmente se encargará de agregar el comportamiento de cada uno de los
métodos descritos en esta interfase.
A partir de este proyecto empezaremos a separar los paquetes y clases según la funcionalidad de cada
una de ellas.
En el caso del paquete de acceso a datos su función es definir la forma en que se interactúa con el
archivo que es donde se almacenará la información.
Sin embargo el uso de interfaces y su implementación empieza a tomar importancia debido a que en cursos
posteriores vamos a aplicar precisamente este tipo de conceptos.
Por ejemplo en el curso de IAVA con JDBC cuando empezamos a guardar información en bases de datos por
ello es importante definir la interfase que es la que contiene los métodos que se utilizarán por otras
clases en la aplicación.
Pero la implementación podemos definir cuál es la que se va a utilizar por ejemplo que guarde la información
en un archivo o alguna otra implementación que guarde la información en una base de datos.
La interface será la misma pero podríamos tener distintas implementaciones y como hemos comentado una
de las implementaciones podría guardar la información simplemente en un archivo de texto pero otra de
las implementaciones podría guardar esta información en una base de datos y así definimos una misma
interfase pero distintas implementaciones y ya depende de nuestro programa.
Cuál es la implementación que va a utilizar.
Por último cabe mencionar que la implementación de esta interfase es completamente técnica respecto
al uso de manejos de archivos por lo que a diferencia del paquete de negocios que veremos a continuación
el paquete de datos realiza las tareas más técnicas que tienen que ver con la manipulación directa del
archivo.
En cambio el paquete de negocios se encarga más de definir las operaciones y funcionalidad desde el
punto de vista de lo que necesita realizar la aplicación pero de alguna manera no le interesa si la
información se almacena o proviene de un archivo ya que de eso se encargará precisamente este paquete
de datos
catálogo de películas punto IAVA en el paquete mostrado DMX con G.M. películas negocio.
Contiene las clases que implementarán las reglas de negocio de nuestra aplicación y a su vez este es
el paquete que será el intermediario entre la interfaz con el usuario es decir el método Mail y el guardado
de la información es decir el paquete de datos similar al paquete de datos.
Este paquete hemos agregado también una interfaz y una implementación.
De esta manera la interfase de usuario es decir el método Mainat hará uso de la interface y será la
implementación de catãlogo películas IMQ quien finalmente ejecutará las tareas necesarias para esta
aplicación.
A su vez la implementación del catálogo de películas será quien utilice la interfase acceso datos punto
IAVA por lo que al hacer uso de interfaces es que en cualquier momento podríamos cambiar la implementación
y afectar lo menos posible al código que hemos programado.
A esta característica se le conoce como bajo acoplamiento ya que un cambio en un componente o una clase
afecta lo menos posible a otras clases así que es sólo una de las muchas ventajas de programar utilizando
interfaces y no utilizar directamente la implementación de la funcionalidad que necesitamos.
Este tipo de conceptos lo vamos a empezar a aplicar en cursos posteriores.
Por ejemplo en el curso de IAVA con JDBC
clase Mayne esta clase representa la interfase con la que el usuario va a interactuar.
Esta clase solicita vía consola la acción requerida por parte del usuario y solicita opciones como iniciar
catálogo de películas agregar una película listar películas buscar una película y salir y dependiendo
de la opción elegida por el usuario es la acción que vamos a ejecutar esta clase se apoya de la clase
catãlogo películas para realizar las operaciones que necesita esta aplicación.
A su vez la variable opción es la que se encargará de almacenar la opción seleccionada por parte del
usuario y el nombre del archivo indica la ruta donde se almacenará el archivo.
Por ejemplo la cadena aullaba que se puede utilizar si estamos en Windows es C dos puntos doble diagonal
invertida catãlogo películas doble diagonal invertida películas punto txt.
Sin embargo si es otro sistema operativo como MAC o s o Linux debemos utilizar la diagonal hacia adelante
y podríamos utilizar una ruta utilizando el mismo nombre de folder diagonal catálogo películas diagonal
películas punto txt.
Debemos recordar que la carpeta sobre la que vayamos a trabajar ya debe estar creada y en caso necesario
debe tener permisos de escritura aunque esto depende del sistema operativo sobre el cual estemos trabajando
salida del programa.
Según hemos comentado el menú de opciones mostrado al usuario son iniciar catãlogo películas agregar
película listar películas buscar película y salir por ejemplo si introducimos la opción 2 entonces nos
solicita introduce el nombre de una película a agregar y posteriormente proporcionamos el nombre de
la película por ejemplo Batman y podemos observar que nos debe demostrar se ha escrito correctamente
al archivo así que como vemos dependiendo de la opción elegida por el usuario es la acción que vamos
a ejecutar.
Así que este es el menú que debemos programar para que el usuario pueda interactuar con la aplicación
también podremos tener otra opción.
Por ejemplo si mostramos el menú y ahora selecciona la opción 3 listar películas entonces nos debe demostrar
el listado de películas.
En este caso nos está mostrando la película que hemos agregado la película de Batman así que tenemos
todo listo para comenzar a realizar la aplicación de catálogo de películas aunque les vamos a agregar
la solución de este laboratorio al final se les solicita aplicar todo el esfuerzo posible para realizar
correctamente este laboratorio y solamente en caso de que tengan problemas pueden apoyarse de la solución
de este laboratorio.
Esto para que puedan aplicar los conceptos que hemos visto en este curso de programación con Java así
que manos a la obra y te deseamos el mayor éxito en la realización de este laboratorio a final del curso
de programación collados.