Actividad
Objetivo de la actividad
Demostrar los conocimientos sobre el manejo de archivos.
Instrucciones
Inicia un nuevo proyecto y realiza lo siguiente.
- Escribe una clase llamada AddressBook, que representará la agenda telefónica.
- La clase AddressBook deberá tener un atributo de tipo HashMap que almacene los contactos, HashMap será un Map<String, String>, el primer atributo String utilizará el número telefónico como llave.
- En la clase AddressBook se implementarán los métodos para la lectura y escritura de los contactos en un archivo de texto.
- load: cargará los contactos del archivo.
- save: guardará los cambios en el archivo.
- Se implementarán tres métodos para modificar la información de los contactos.
- list: mostrar los contactos de la agenda.
- create: crear un nuevo contacto.
- delete: borrar un contacto.
- Los tres métodos anteriores deberán estar conectados a un menú interactivo que proporcionará al usuario de la aplicación una interfaz para realizar las tres acciones anteriores:
- list: iterar el HashMap de AddressBook y mostrar los contactos con el siguiente formato:
Contactos:
{Número} : {Nombre}
{Número} : {Nombre}
{Número} : {Nombre}
{Número} : {Nombre}
.... |
- create: solicitar el nombre y número de contacto a guardar.
- delete: solicitar el número telefónico a eliminar.
- Crea un repositorio en línea y sube el proyecto.
- Realiza un reporte sobre la solución implementada para el problema, explicando el funcionamiento del programa.
- Incluye capturas de pantalla como evidencia del funcionamiento del programa.
- Incluye la liga al repositorio en el reporte realizado.
- Eres libre de incluir funcionalidades adicionales que pueden tomarse en cuenta como puntos extra.
Nota: El archivo será un archivo de texto plano que almacenará los contactos en un formato de CSV (Comma Separated Values).
Checklist
Asegúrate de:
- Conocer la clase AddressBook con atributos y métodos.
- Realizar la evidencia del almacenamiento y lectura de información en archivo de texto.
- Elaborar el menú interactivo de la aplicación.