Estas en: Home > coding

Entradas etiquetadas con coding

Integración continua: Coding standards para PHP

0

¿Qué son los coding standards?

Los coding standards son estándares de código, dicho de otra manera, son reglas que indican como debe escribirse el código, cuantos espacios debe tener una tabulación, en qué línea debe ubicarse un «else», cómo debe escribir una función, método o clase, etc.

Los coding standards se utilizan principalmente en los CMS como WordPress o Drupal, esto permite que el código sea mucho más legible por diferentes personas.

La aplicación que vamos a instalar es PHPCS que nos permitirá revisar el código y comprobar si estamos siguiendo el standard correctamente.

Instalación

La instalación es sencilla, como prácticamente la mayoría de herramientas que utilizaremos para nuestro servidor de integración.

sudo apt−get install php−pear
sudo pear install php_CodeSniffer

En Ubuntu la aplicación se instala en /usr/share/php/PHP.

Una vez instalado, será necesario dar permisos de lectura al usuario www-data:

cd /usr/share/php/PHP
sudo chown −R www−data:www−data CodeSniffer
sudo chown www−data:www−data CodeSniffer.php
sudo chmod −R 775 CodeSniffer
sudo chmod −R 775 CodeSniffer.php

Con esto ya lo tenemos instalado.

En futuros post, instalaremos algunos Coding Standards y veremos el funcionamiento de esta herramienta.

Cron Job WordPress

PHP Code Sniffer, WordPress y coding standards

0

Llevo varias semanas mirando información sobre integración continua y desde hace varios días estoy dándole caña a todas las herramientas que hay que instalar y configurar.

Entre esas herramientas se encuentra PHP Code Sniffer, que permite revisar el código en busca de violaciones de la codificación estándar que se esté usando.

Los coding standards, para el que no los conozca son como las guías de estilo que tienen los periódicos, en ellos se especifica la tipografía a usar tanto en los titulares como en el contenido, el tamaño del texto, la ubicación, etc. En programación ocurre igual, solo que aquí no se habla de tipografías, sino de espacios en blanco después de la apertura del paréntesis de una función, y antes del cierre de este, número de espacios en blanco para sangrar las líneas, o tabulaciones, ubicación de las llaves de apertura, si en la misma línea o en la inferior, etc. Podéis ver el coding standard de pear aquí: http://pear.php.net/manual/en/standards.php.

En WordPress también existe un coding standard derivado del de PEAR: http://codex.wordpress.org/WordPress_Coding_Standards el cual debería ser utilizado por todos para mantener el código de nuestros temas y plugins lo más estándar posible.

Digo debería  porque si ejecutas el sniffer sobre el código de WordPress, no hay ni un solo archivo que no incumpla el coding standard. Es bastante frustrante después de toda una tarde de configuración, aprendizaje, errores, pruebas, y más configuración, encontrarte que no se sigue el estándar, excepto en el código nuevo. Aquí lo explican: https://groups.google.com/forum/?fromgroups=#!msg/wp-hackers/Exg0i8wZEEQ/K1_TxvSs44cJ.

Así que solo queda buscar la forma de configurar la herramienta para que no procese los archivos de WordPress y que solo se aplique en las plantillas y plugins que yo desarrolle.

 

PD: Miedo me da pasarle el phpcs a los plugins de WordPress.

Ir arriba