Python - Lección 23: Ejerciciós con bash scripting y MySQL

Prácticas del capítulo:

Hace mucho que no tocaba practicar lo visto en este curso, por lo que el ejercicio va a ser más largo de lo habitual. Para el mismo, deberán investigar por su cuenta para resolver algunos de los requerimientos.

Enunciado: Para el ejercicio, vamos a crear un programa en compuesto de múltiples scripts en Python y Bash, el cual servirá como agenda de contactos y gestor de contraseñas.

Requerimientos:

  1. Debe haber un script principal, que al ser ejecutado nos mostrará un menú con múltiples opciones y en donde el usuario deberá elegir el número de opción correspondiente para acceder a dicho submenú del programa, Mi recomendación es que utilicen un script aparte para la impresión de menúes y otro para el resto de funciones necesarias para el funcionamiento, por lo que el script principal sólo deberá importar e invocar dichas funciones.

ejercicio1

  1. Para la agenda, el usuario debe poder cargar un contacto nuevo (los campos son a elección), consultar la lista de contactos filtrando por alguna palabra clave (Puede ser por apellido o nombre), eliminar a un contacto y actualizar los valores del mismo. Para poder realizar esta tarea, el programa debe poder insertar, actualizar, consultar y eliminar datos de una base de datos.

  2. Para el gestor de contraseñas, el trabajo es muy similar. El usuario debe poder cargar a una base de datos las credenciales de acceso que desea resguardar.
    Los campos deben ser “Plataforma” o “Nombre”, “Usuario”, “Contraseña” y “URL del sitio”.

  3. Para el campo de contraseñas, el programador debe hacer un script de bash que genere una contraseña aleatoria de N cantidad de caracteres y Python deberá capturar el output en una variable para almacenarlo en la base de datos.

  4. El usuario debe de poder cargar nuevas credenciales, listarlas por palabra clave, eliminarlas o actualizarlas.

Recomendaciones: Como el programa va a ser largo, les recomiendo que creen múltiples scripts de Python en donde cada uno realizará una consigna distinta y que estos scripts puedan ser ejecutados por el script principal o añadidos como librerías para ejecutar sus funciones.
De esta manera, podrán trabajar de manera más organizada, no necesitarán ejecutar todo para poder probar qué hace cada parte que desarrollen.
Tienen la total libertad de ser creativos y añadir funcionalidades al programa, ya que como les digo siempre, los que deben de aprender son ustedes y su nivel como programadores depende de cuánto esfuerzo dediquen a probar cosas nuevas.

<Tema anterior - Tema siguiente en desarrollo>

1 me gusta

Muy condensado y claro. Es un gran aporte como consulta rápida.

Un saludo.

1 me gusta

Si, es solo para practicar un poco. Cómo mencioné al principio del curso, el mismo es para evitar para por uno que enseña lo mismo y menos, prometiendo que serán programadores en unos meses.
Siempre se va a ver una base sobre el tema y el resto es investigación por parte del propio estudiante.

1 me gusta