Que ocurre cuando nos vemos envueltos en un desarrollo compartido con varios desarrolladores. Normalmente cada uno tiene su estilo de codificación, y cuando hablo de estilo me refiero no solo a la forma en la que nombramos las clases o métodos sino a como escribimos el código. Si has pasado por un desarrollo compartido sabes de que hablo.
Lo normal en estos casos es utilizar una guía de estilos común que nos permita armonizar el resultado y hacer así un poco más legible aquello que no hemos creado nosotros mismos.
No está de más apoyarse en herramientas externas como formateadores de código o code beautifers para corregir aquellas desviaciones de la norma que hemos seguido.
En el caso de PHP nos encontramos con una paquete muy útil, que aunque se encuentra en versión beta, podemos utilizar con confianza en su funcionalidad. Habló de PHP:Beautifier
Lo podemos instalar utilizando el script de linea de comandos pear install
Una vez instalado os ofrece una seria de clases que os permitiran moldear vuestro código aunque yo os recomiendo la utilidad de consola php_beautifier o php_beautifier.bat en su versión para Windows.
El paquete en cuestión permite formatear vuestro PHP con varias opciones. Por ejemplo:
php_beautifier --filters "ArrayNested() NewLines(before=if:switch:T_CLASS,after=var:function)" source.php > target.php |
En este caso le indicamos que anide los arrays y que inserte saltos de linea antes de las lineas que incluyan las palabras if, switch y T_CLASS y despues de las lineas que incluyan var y function. El fichero que va a tratar será source.php y el resultado se volcará en target.php
Nota: T_CLASS es un token. Se puede consultar el listado de tokens en la página de PHP. Mis pruebas me dicen que esto no funciona muy bien. Esperemos que lo arreglen 😉
Si quereis ser fieles a los estandares establecidos PHP_Beautifier viene preparado de serie para adaptar el código al estilo PEAR como se puede ver en el siguiente ejemplo:
php_beautifier --filters "Pear()" source.php > target.php |
Ahora toca utilizarlo y si no os convence, ampliarlo. Es lo bueno del open source.
Leave a Reply