[ TEMIGA ]
Buenas Practicas de Desarrollo + PHP5 + Parte I
Ahora comienzo una serie de post orientados a las buenas practicas de desarrollo bajo PHP5, básicamente son medidas adoptadas por mi persona desde hace un tiempo y es producto de la misma dinámica que hace que uno se de cuenta que a veces no esta haciendo las cosas bien y como el norte es hacer software de manera profesional este es un buen comienzo, aunque fácilmente puedes tomar tu código y aplicarles estas técnicas que lo hacen mas limpio…
En esta primera parte tocare dos herramienta PHP_CodeSniffer y PHP_Beautifier
PHP_CodeSniffer
Nos ayuda a saber cuando estamos trabajando fuera del estándar, no con esto digo que mi código no tiene ni un error cuando ejecuto esta herramienta (tampoco soy un talibán).
Las instalación es bastante sencilla es un paquete que esta en PEAR
# pear install PHP_CodeSniffer
La forma de utilizarla es tan sencilla como esta…
#phpcs <directorio_archivo_PHP>
Y la salida de debería ser algo como lo que se muestra abajo, como se aprecia solo debemos ir a la linea y seguir la sugerencia que nos indica…
-------------------------------------------------------------------------------- FOUND 15 ERROR(S) AND 20 WARNING(S) AFFECTING 25 LINE(S) -------------------------------------------------------------------------------- 24 | WARNING | PHP version not specified 24 | ERROR | Missing @link tag in file comment 38 | ERROR | Missing @link tag in class comment 40 | ERROR | Expected 0 spaces before opening brace; 1 found 41 | ERROR | Spaces must be used to indent lines; tabs are not allowed 126 | ERROR | Spaces must be used to indent lines; tabs are not allowed 127 | ERROR | Public method name "Kumbia::init_application" is not in camel caps format 127 | ERROR | Missing function doc comment 127 | ERROR | Opening function brace should be on a new line 136 | WARNING | Line exceeds 85 characters; contains 91 characters 136 | WARNING | Equals sign not aligned with surrounding assignments; expected 17 spaces but found 1 space<pre> <h2>PHP_Beautifier</h2> Esta herramienta formatea el codigo de manera tal que este "humanizado", la instalación es tan sencilla como el anterior <pre lang="text">#pear install --alldeps --force PHP_Beautifier
hecho esto veamos un ejemplo…
1 2 3 4 5 6 7 8 | function test ($aParameter) { $a = 4; $b=5; if ($a == $aParameter) { var_dump('Hola Mundo'); } } |
como se aprecia el código es realmente feo, ahora si ponemos en acción a PHP_Beautifier esto mejora…
#php_beautifier archivo.php salida.php
1 2 3 4 5 6 7 8 | function test($aParameter) { $a = 4; $b = 5; if ($a == $aParameter) { var_dump('Hola Mundo'); } } ?> |
Como podemos notar la diferencia es notable :) los invito a todos a generar código de una manera profesional y profesional no solo es que la aplicación funcione correctamente…
| Imprimir artículo | Este artículo fue publicado por CaChi el Julio 10, 2008 a las 7:20 pm, y está archivado en Planeta Linux, Programación. Sigue las respuestas a esta entrada a través de RSS 2.0. Puedes dejar un comentario o enviar un trackback desde tu propio sitio. |







hace 2 años
m{^_^}m interezante…. mas …. esta bueno…..
hace 2 años
Creo que deberé usar esas clases en mis trabajos pq cada dia que pasa, crecen más y de bien seguro se pueden mejorar.
hace 1 año
Interesante lo de _Beautifier… lo voy a probar a ver q tal
Gracias por la info
hace 1 año
Interesante, sobre todo teniendo en cuenta que el codigo generado por tu segunda herramienta no seria validado por la primera.
En los “lineamientos” de codigo de Zend, indican que las declaraciones de codigo las llaves deben aperturarse en la linea siguiente y no la misma
funcion mifunction()
{
// Mi codigo
}
Saludos
hace 1 año
Hola Necudeco, si estas en lo cierto, en caso de tener un Buen IDE (como eclipse) con solo hacer Ctrl+Shift+f ;-) todo tu código queda formateado de acuerdo al Standard, por otro lado es importante saber saber que estas herramientas son flexibles y se puede adaptar a nuestras necesidades…
Saludos…!
hace 1 año
hey!! como hago para ejecutar el PHP_CodeSniffer no entiendo nada :(
Se puede llamar a la clase desde el servidor local o hay q hacerlo desde la consola? tengo windows vista.
hace 1 año
Hola demonio69, PHP_CodeSniffer lo ejecutas desde la consola, debes tener instalado PEAR… a pesar que el how to es para usuarios GNU/Linux te puedes guiar para tu windows vista :P