@media screen and (min-width: 580px) { .flotantewhatsapp{ display:none; } }

Compartir por WhatsApp

python-aprendiendo-desde-cero-i

Python: Aprendiendo desde cero VII – Estructura proyecto

Python: Aprendiendo desde cero VII – Estructura proyecto

Como ya he comentado varias veces, yo no soy programador, pero he hecho mis pinitos durante estos años. Y una de las cosas que más me interesa cuando gestiono un proyecto, es intentar hacer un diseño lo más limpio posible, y que a la larga no me de problemas ni a mí ni a mi equipo.

Como nuestro objetivo final es aprender Python y generar un pequeño programa, vamos a empezar con conceptos de cómo estructurar las carpetas de nuestro futuro programa. Sé que nos quedan muchos más conceptos por descubrir, pero es interesante descubrir otros temas relacionados.

Así que me pongo manos a la obra, espero que os parezca interesante…

Para empezar vamos a hablar de cómo estructurar los repositorios de nuestro proyecto, e intentaremos, más adelante, hablar un poco de scripting y otros conceptos relacionados.

Decir que me he documentado antes de escribir este post (bueno como casi siempre, pocas cosas son de cosecha propia), con profesionales que saben mucho más de Python o desarrollo que yo (que tampoco es complicado ;P ). Dicho esto, la estructura a seguir, sería más o menos ésta, y ahora la vamos explicando poco a poco:

Datos y ficheros que deberemos recopilar:

  • Nombre del proyecto
  • Descripción del proyecto
  • Ficheros y estructura:
    • README.rst:
      • Un fichero README permite a un usuario que no conozca el proyecto identificar cual es el objetivo del mismo, su descripción e incluso indica cómo hacer la instalación o ejecución de los ficheros.
      • Es importante, sobre todo si vas a compartir el proyecto en plataformas donde quieres que se contribuya, o tienes compañeros de desarrollo que van a utilizarlo.
      • Se sitúa normalmente en el raíz de la estructura, ya que si lo subes por ejemplo, a Github u otra plataforma, será utilizado para recopilar información.
      • Se puede escribir en casi cualquier formato de texto, pero en desarrollo normalmente se usa Markdown
      • Os dejo un ejemplo:

python-aprendiendo-desde-cero-vii-estructura-proyecto-1

    • LICENSE:
      • Si estáis generando un proyecto para vuestra empresa, uso personal o incluso para compartirlo, es importante definir el tipo de licencia que se va usar en el proyecto. Eso se hace en este fichero.
      • Para definir el tipo de licencia podéis usar la web: https://choosealicense.com/
      • Podéis no colocar ninguna licencia, pero creo que es importante definir el objetivo, aunque lo entregues a la comunidad, para que sea un proyecto serio.
      • Os dejo un ejemplo:
    • CARPETA SAMPLE:
      • Donde se definen los módulos del proyecto, de los que hablaremos en otro apartado.
      • Aunque lo comentamos en otra entrada, un módulo se podría definir cómo un fichero que se puede reutilizar de forma recurrente en un programa. Ya que hasta ahora, sólo hemos hecho ejemplos con variables y funciones que se ejecutan en el momento, pero cuando termina la ejecución se pierden. Un módulo es un fichero que contiene definiciones y declaraciones de Python, que podemos usar luego en un script.
    • REQUERIMENTS.TXT:
      • Si nuestro proyecto tiene dependencias, sería el fichero donde definirlas.
    • SETUP.PY:
      • Es el script de configuración. Nos permite la gestión de los paquetes y librerías
      • Su propósito es la correcta instalación del software. Sería como el lanzador del programa
    • CARPETA DOCS:
      • Carpeta que contiene toda la documentación del proyecto
    • CARPETA TEST:
      • Esta carpeta contiene nuestro entorno de test, para realizar las pruebas de nuevas compilaciones

Seguiremos completando con el resto de entradas nuestro conocimiento en Python. Os dejo el temario ya generado:

TEMARIO APRENDE PYTHON DESDE CERO

Python: Aprendiendo desde cero I: Introducción
Python: Aprendiendo desde cero II: Comentarios, Variables y Datos
Python: Aprendiendo desde cero III: Controles de flujo
Python: Aprendiendo desde cero IV: Funciones
Python: Aprendiendo desde cero V – Módulos
Python: Aprendiendo desde cero VI – Operadores
Python: Aprendiendo desde cero VII – Estructura proyecto
Python: Aprendiendo desde cero VIII – Scripting
Python: Aprendiendo desde cero IX – Fechas

Espero os parezca interesante…seguiremos con los conceptos básicos hasta poder hacer un pequeño programa que es el objetivo final.

¿Te ha gustado la entrada SÍGUENOS EN TWITTER?

¿Te ha gustado la entrada SÍGUENOS EN TWITTER O INVITANOS A UN CAFE?

El Blog de Negu

Acerca de Raul Unzue Pulido

Administrador de sistemas virtuales e infraestructuras IT, linuxero y entusiasta de la tecnología.

Compruebe también

esp32-conectar-a-thonny-en-macos-y-actualizar-firmware-5

ESP32: Conectar a Thonny en MacOS y actualizar firmware

ESP32: Conectar a Thonny en MacOS y actualizar firmware Durante varias entradas, hablamos de Thonny, …

Un comentario

  1. Gracias por la informaicón. Muy Util.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

14 − 10 =

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies
Blog Maquinas Virtuales - El Blog de Negu