Guias de Estilo - PEP8

Muchas veces nos centramos en aprender un lenguaje de programación, pero olvidamos uno de los puntos más importantes:

Seguir una buena guía de estilo.

Cuando escribimos nuestro código y sobretodo cuando trabajamos en un equipo de trabajo, es imperativo seguir una guía de estilo. Seguir este tipo de guías no solo ayuda a la claridad del código sino que nos ayuda a seguir una metodología común en nuestro grupo de trabajo.

Pep 8 es una guía de estilo muy conocida para la programación de código en Python, pero sus recomendaciones pueden extrapolarse a cualquier lenguaje de programación.

Puntos mas importantes del PEP8

Basicos:

  • Siempre preferir espacios en ves de tabs.
  • Usar 4 espacios en la indentación.
  • Las lineas deben tener menos de 80 caracteres.
  • Las lineas que pasen de esta longitud deben ser divididas en dos lineas, y la linea resultante de la división debe estar indentada.
  • En una fila, las funciones y las clases deben estar separadas por dos lineas en blanco.
  • No colocar espacios alrededor de indices de lista, llamadas de funciones o argumentos.

Nombres

  • Las funciones deben estar declaradas en minúscula y las palabras separadas por guiones bajos def funcion_cool()
  • Los metodos privados de una clase deben comenzar con doble guion bajo def __private_method().
  • Los métodos protegidos de una clase deben comenzar con guion bajo def _protected_method().
  • Las clases y excepciones deben ser capitalizadas por palabra class SuperClass.
  • Constantes del module deben estar en mayusculas separadas por guiones bajos NUMERO_MAXIMO = 10.
  • Los métodos de instancia de una clase deben usar el parametro self como primer parámetro.
  • Los métodos de clase deben usar cls como primer parámetro, para referirse a la misma clase.

Expresiones

  • Usar negación en linea (if a is not b) en vez de negar una expresion positiva (if not a is b).
  • No validar valores vacíos usando len if (len(lista) == 0), usar if not lista.
  • Siempre coloca los imports al inicio del archivo.
  • Siempre importa funciones y clases usando from my_module import MyClass en ves de importar el modulo completo import my_module
  • Si aun debes usar imports relativos, usa la sintaxis from . import my_module
  • Las importaciones siempre deben estar en el orden:
  1. Módulos de la librería standar.
  2. Módulos externos.
  3. Módulos del proyecto.

Y cada sección debe estar en orden alfabético.

La búsqueda puede acotarse después de establecer la conveniencia de una prenda para regalo o uso propio. Un criterio objetivo exige revisar el contenido exacto de la variante seleccionada. El contenido «» ofrece un punto de partida para ordenar los resultados según el tema y el nivel de detalle. Antes de cerrar el proceso, es útil comparar la opción elegida con las alternativas consideradas.

La búsqueda puede acotarse después de establecer la conveniencia de una prenda para regalo o uso propio. Un criterio objetivo exige revisar el contenido exacto de la variante seleccionada. El contenido «camisetas de clubes de fútbol» ofrece un punto de partida para ordenar los resultados según el tema y el nivel de detalle. Antes de cerrar el proceso, es útil comparar la opción elegida con las alternativas consideradas.