Blog / PHP / Estándares de programación en PHP
¿Cómo es tu código?
Los lenguajes de programación tienen unas normas y/o recomendaciones
para evitar o reducir variaciones en los estilos de escribir código
de cada programador que incrementen su complejidad a la hora de leerlo.
PHP, es bastante "permisivo" y más allá de un conjunto de normas a
seguir en el nombrado de variables, constantes, etc., permite que funcionen
programas escritos de forma muy diversa. Esto nos hace más responsables
a la hora usar un estilo coherente que en otros lenguajes.
PHP Framework Interop Group
PHP FIG es el grupo que desarrolla una serie de recomendaciones para estandarizar el código PHP, lo que redundara en una mejor legibilidad y mantenibilidad en el futuro, como ellos dicen: para tratar de trabajar
mejor juntos.
Repositorio oficial con los estándares PHP
Sitio web de PHP FIG
Varios estándares disponibles, ¿cuál usar?
Esta es la parte que puede hacer complicada la toma de contacto
con los estándares y reconozco que por eso no los use desde un principio.
En general depende de con que trabajes.
Laravel usa PSR-2, y en parte PSR-4 (autoload),
por lo que si desarrollas con este Framework deberías adoptarlo.
Symfony usa PSR-2 y parte de PSR-4.
Descripción de las reglas PSR-2
En general cada Framework o empresa adoptan uno u otro si bien
PSR-2, es el estándar "general" más utilizado, por ello las
herramientas para estandarizar código suelen llevarlo configurado
por defecto.
Simplificando, PSR-O estableció unas normas, PSR-1
añadió más, y lo mismo PSR-2, y son acumulativas, aunque "corrigen" algunos aspectos. Así PSR-2 sigue las normas de PSR-1, además de añadir
nuevas y PSR-1, igual con PSR-0. Las respectivas PSRs abordan
aspectos concretos del lenguaje e implementaciones que fueron apareciendo
o era necesario concretar.
Adaptándonos a los estándares
Hay un extenso conjunto de recomendaciones. No hace falta leerlas
todas, sino somos muy chapuceros prácticamente no modificaremos
nuestro punto de partida y existen herramientas que nos ayudarán.
PHP-CS-Fixer - Herramienta para ajustar automáticamente el código a estándares. También como
plugin para Sublime.
PHP-Codebeautifier - Otro plugin para Sublime 3.
Entrada de como instalar y comenzar a usar PHP CS Fixer.
Finalmente, si ya hemos decidido adoptar los estándares, otra
buena práctica, sería el nombrado de entidades en inglés.
Esto es así, porque es normal comenzar usando el propio idioma, pero,
aunque estés escribiendo una aplicación en casa, no sabes si en el futuro otras personas deberán mantenerlo y ampliarlo o cuando vas a tener que compartir código o si vas a requerir ayuda.
30-11-2017