Ejercicio de programación con Go: Agenda de contactos por consola
Proyecto
0h 35m
Ejercicios de programación de Go proyecto real: crea una agenda de contactos en la línea de comandos con funcionalidades completas.
Estructura del proyecto:
- Crea los archivos necesarios, por ejemplo:
main.go
: Punto de entrada de la aplicación.contacto.go
: Definición de la estructura del contacto y operaciones relacionadas.persistencia.go
: Funciones para guardar y cargar contactos desde un archivo.cmd.go
: Implementación de la interfaz de menú y manejo de las opciones seleccionadas por el usuario.
Definición de la estructura del contacto:
- Define una estructura
Contacto
con los camposID
,Nombre
,Telefono
yEmail
.
Implementa las funciones de persistencia:
- Escribe funciones para guardar los contactos en un archivo JSON y para cargar contactos desde dicho archivo.
- Asegúrate de manejar el caso en que el archivo no exista inicialmente.
Desarrolla las funcionalidades de la interfaz de menú:
- Implementa una función que muestre un menú con opciones numeradas (Agregar, Listar, Buscar, Eliminar, Salir).
- Captura la selección del usuario y ejecuta la operación correspondiente.
- Utiliza bucles para permitir múltiples operaciones hasta que el usuario decida salir.
Implementa las operaciones CRUD:
- Agregar: Solicita al usuario ingresar los detalles del nuevo contacto y lo añade a la lista existente.
- Listar: Muestra todos los contactos almacenados de manera organizada.
- Buscar: Solicita un nombre y muestra los contactos que coincidan de forma insensible a mayúsculas y minúsculas.
- Eliminar: Solicita el ID del contacto a eliminar y lo remueve de la lista.
Manejo de errores y validaciones:
- Asegúrate de manejar errores como entradas inválidas, archivos inexistentes, etc.
- Valida que los campos de los contactos tengan el formato correcto (por ejemplo, que el email tenga un formato válido).
- Proporciona mensajes claros al usuario en caso de errores o entradas incorrectas.
Prueba la aplicación:
- Ejecuta la aplicación en diferentes escenarios para asegurarte de que todas las funcionalidades funcionan correctamente.
- Verifica que los datos se persisten correctamente entre ejecuciones.
- Asegúrate de que la interfaz de menú sea intuitiva y fácil de usar.
Más ejercicios de programación con Go
Evalúa tus conocimientos en Go con más ejercicios de programación de tipo Test, Puzzle, Código y Proyecto con VSCode.
Control de flujo y estructuras de bucle
Código
Tipos de datos, variables y constantes
Código
Composición de structs en lugar de herencia
Código
Estructuras de control
Puzzle
Arrays y slices
Puzzle
Operadores y expresiones
Puzzle
Instalación Go primer programa
Código
Errores personalizados y trazabilidad
Código
Sistema API REST gestión de libros
Proyecto
Polimorfismo a través de Interfaces
Código
Canales y comunicación entre Goroutines
Código
Goroutines y concurrencia básica
Test
Métodos HTTP con net/http
Puzzle
Métodos con receptores por valor y por puntero
Código
Evaluación Go
Test
Crear e invocar funciones
Código
Estructuras structs
Código
Introducción a Go
Test
Estructuras de datos Mapas
Código
Certificados de superación de Go
Supera todos los retos de Go y obtén certificados de superación para mejorar tu currículum y empleabilidad.
Tecnologías de este ejercicio de programación
Entornos de desarrollo para este ejercicio
Visual Studio Code
GitHub