Agenda de contactos por consola

Proyecto de programación
Intermedio
Go
Curso de Go
35 min
Actualizado: 08/11/2024

¡Programa y certifícate!

Asistente de IA
Solución de código
Certificado
Empezar ejercicio

Descripción

Desarrolla una aplicación de línea de comandos en Go para gestionar contactos, permitiendo agregar, listar, buscar y eliminar entradas.

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 campos ID, Nombre, Telefono y Email.

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:

Guarda tu progreso

Inicia sesión para no perder tu progreso y accede a miles de tutoriales, ejercicios prácticos y nuestro asistente de IA.

Progreso guardado
Asistente IA
Ejercicios
Iniciar sesión gratis

Más de 25.000 desarrolladores ya confían en CertiDevs

  • 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.

Solución al ejercicio de programación en Go

Contenido bloqueado

¡Desbloquea la solución completa!

Completa el ejercicio de programación en Go para acceder a la solución paso a paso, explicaciones detalladas y mejores prácticas.

solution.js
JavaScript
1 function solveChallenge ( input ) {
2 // Algoritmo optimizado O(n log n)
3 const data = parseInput ( input );
4 const sorted = data . sort (( a , b ) => a - b );
5
6 // Aplicar técnica de dos punteros
7 let left = 0 , right = sorted . length - 1 ;
8 const result = [];
9
10 while ( left < right ) {
11 const sum = sorted [ left ] + sorted [ right ];
12 if ( sum === target ) {
13 result . push ([ sorted [ left ], sorted [ right ]]);
14 left ++; right --;
15 } else if ( sum < target ) {
16 left ++;
17 } else {
18 right --;
19 }
20 }
21
22 return result ;
23 }
Código completo
Explicaciones
Mejores prácticas
+1.200 developers han resuelto este ejercicio de programación

Practica con ejercicios de programación en Go

Mejora tus habilidades con cientos de ejercicios de práctica, recibe retroalimentación instantánea y obtén tu certificación cuando estés listo.

Asistente de IA

Aprende de tus errores

Progreso

Mide tu avance

Certificación

Valida tus habilidades

Únete a miles de desarrolladores mejorando sus habilidades en Go

⭐⭐⭐⭐⭐
4.9/5 valoración