Cómo imponer los estándares de código en el desarrollo de WordPress utilizando el compositor

En mi último artículo para Torque, escribí sobre por qué creo que para el código PHP el cumplimiento de los estándares de codificación establecidos por la comunidad PHP tiene más sentido que los establecidos para el núcleo de WordPress. Estos estándares se basan en satisfacer las necesidades de un código antiguo existente, limitado a las características lingüísticas que tienen 10 años o posterior. Cuando comienza un nuevo complemento, sitio o aplicación de WordPress, no hay razón para tomar la misma decisión, cuando sus circunstancias son totalmente diferentes. Como resultado de este artículo, me gustaría mostrarle, desde un punto de vista técnico, cómo puede implementar y cumplir con un estándar establecido, como PSR-2 o incluso estándares de codificación de WordPress. Puede hacer esto utilizando una herramienta llamada Sniffer de código PHP, en este artículo le mostraré cómo usar estas herramientas para probar si su código cumple con estas reglas y remedia automáticamente la mayoría de las desviaciones. También escaparemos del código.
¿Por qué importan los estándares de codificación? Normalmente, cuando las personas escriben sobre los estándares de codificación, dicen que es importante, porque hace que el código sea más legible y reduce la fricción para tener más desarrolladores en un proyecto. Es cierto, estoy de acuerdo. Pero no es por eso que realmente me gusta un estilo de código para aplicar y arreglar automáticamente en mi código. Creo que no me preocupo demasiado por el estilo del código me permite pensar menos en vincular la pantalla y centrarme más en el código real. Escribir el código no es fácil y una mayor concentración ayuda. Creo que es muy importante pensar menos en cosas en las que no debería pensar. Por ejemplo, podría pensar en cómo se podría diseñar una representación de objetos de una solicitud HTTP. Hay muchas formas totalmente válidas de resolver el problema. En cambio, seguiré el modelo establecido por el estándar PSR-7 como todos los demás. No es solo el cumplimiento de los estándares en aras de los estándares, sino que vale la pena elegir un marco para ejecutar su código. No afecta el código que escribe en absoluto.
Y no estoy argumentando por la reescritura de WordPress, por lo que es construido para ser interoperable con marcos PHP. La API REST WordPress y WP-CLI nos permiten discutir muchos de estos temas. En cambio, estamos hablando de su propio código de sitio personalizado o los complementos de olor a Sniffer de su código PHP están buscando el código que huele mal. El término “huele feo” se refiere a los olores del código. Los olores de código son modelos en código que, cuando están presentes, probablemente significa un problema común en el código. No significa que no funcione, sino que no es óptimo. Por ejemplo, una clase que es muy larga, huele mal. No significa que sea malo, pero pensar por qué es tanto tiempo podría conducir a la mejora del código basado en soluciones comunes a los problemas que sugiere esta especia. La escolación de las violaciones de los estándares de código es solo un tipo de olor que podría detectar con esta herramienta. Veamos la aplicación de los estándares de codificación. Para este artículo, usaré compositor para administrar la instalación y ejecución del sniffer y otras herramientas. Aunque puede instalarlos usando Pear y ejecutarlos directamente desde CLI, el uso del compositor es más fácil. También garantiza que esté ejecutando la versión SNIFFER y otras herramientas, como Phapit, requerido el proyecto, no una versión del sistema.
Aquí está la orden de agregar código SNIFfer a su proyecto usando el compositor: el compositor requiere squizlabs/php_codesniffer -dev observar que utilicé el indicador -dev. Esto lo agrega a la sección “Requerir-Dev” del compositor. De esta manera, puede crear su código para la producción o lanzamiento sin esta adicción. Ahora, en la sección de Escrituras del archivo compositor, agregue un script llamado “Sniffs”. Para cada director de olfato, queremos ejecutar el comando “PHPPCS – Standard = PSR2 “, por lo que si queremos oler el director llamado SRC y Test, lo usaríamos para nuestras Escrituras: {
“Escrituras”: {
“Sniffs”: “PhPCS – -Standard = PSR2 Src/ && Phpcs – -Standard = PSR2/” Prueba
}
} Ahora, cada vez que ejecutamos el “compositor Sniffs” de uso de script, el código PHP Sniffer informará cualquier violación del estándar PSR-2. Es genial y puedes remediarlos manualmente, pero veamos cuánto podemos remediar. Por cierto, hay un SNIFfer de código de codificación de WordPress para el código PHP. Puedes conseguirlo aquí si quieres ir por ese camino. La búsqueda obsesiva de los fijadores de un estándar sobre cómo organizar el código en una página no es una gran inversión. En cambio, configuré mi IDE para seguir el estándar y utilizar el fijador de estándares de codificación PHP para corregir automáticamente la mayoría de las desviaciones.
En PhpStorm, puede acceder a la sección “Estilo de código” de la configuración. En la configuración de PHP, hay una opción llamada “Configuración desde” a la derecha. Verá PSR-2 y WordPress como opciones. Recomiendo elegir uno. Luego, el formato automático del código se ajustará al estándar y el orden de limpieza del código también lo será. Compsoer requiere FriendsOfPHP/PHP-CS-Fixer-Dev Esta pequeña herramienta gran resuelve la mayoría de los problemas con su código. Agreguemos un script al archivo compositor, esto para pelusas: {“escrituras”: {
“Sniffs”: “Php – -Standard = PSR2 Src/ && Phpcs – -Standard = Test PSR2/”,

“Corrección”: “Php-CS-Fixer corrige Src/&& Php-CS-fixer corrige las pruebas/”
}
} Tenga en cuenta que pongo todo el código para cada tarea en un solo script. Más tarde, agregaremos un script para llamar a los demás en el orden correcto.
Los revestimientos Mientras un rastreador busca un código que sea probablemente un problema de mantenimiento a largo plazo, las revestimientos buscan errores. Es importante tener en cuenta que nadie ejecuta su código, todos solo analizar los archivos de texto en los que se encuentra su código. Un enlace no reemplaza las pruebas. Pero me gusta ejecutar uno entre mi reparador y mis pruebas, por lo que si omití algo malo o si el reparador causó un error, se informará sin ejecutar las pruebas, lo que habría fallado. Hay algunas revestimientos PHP allí. Me gusta la pelusa paralela porque es más rápido procesar más archivos simultáneamente, luego uno por uno. El nombre describe la ventaja. Buen espectaculo. Instalemos eso:
El compositor requiere que el comando jakub-andandka/php-prallel-lint para un linter sea “paralelo-lint “, así que actualicemos los scripts del compositor para un comando y pruebas de peluchas: {“Escrituras”: {
“Sniffs”: “Php – -Standard = PSR2 Src/ && Phpcs – -Standard = Test PSR2/”,
“Corrects”: “Php-CS-Fixer corrige SRC/ && PHP-CS-fixer corrige las pruebas/”, “,
“Lints”: “Parallel-Lint ./Src-Blame —- excluir al proveedor && Parallel-Lint ./tests — bllame —- Excluir proveedor”
}
} Tomando todo juntos ahora que tenemos esos tres scripts, podemos ejecutarlos todos, seguidos de pruebas de fitadina con un solo comando. Creo que es importante ejecutar la pelusa y los remedios antes de las pruebas. De esta manera, también probamos remedios automáticos. Es bastante dudoso que este proceso cause errores, pero es fácil evitar ejecutar las cosas en el orden correcto.
Más importante aún, si el código huele mal, no está preparado para ser probado. Entonces, mi pedido me gusta ejecutar cosas, la narrativa es remediar el estilo del código, dejar el código por errores obvios, para verificar si hay violaciones del estilo del código izquierdo y solo después de que el código esté organizado correctamente, recuerde que Ningún código se ejecuta de manera efectiva durante la pelusa y se remedió: pruebe el código. Aquí está la sección de script final con un nuevo script llamado “Pruebas”. Este script solo llama a las otras Escrituras, pero en el orden correcto.
{
“Escrituras”: {
“Pruebas”: “El compositor remedios && el compositor huele && compositor estafa && phunit-cobertura de cobertura de cobertura/clover.xml ,,
“Sniffs”: “Php-Standard = PSR2 SRC/ && PHPCS-Standard = PSR2/” Test, “Corrects”: “Php-CS-Fixer Fix/ && Php-CS-Fixer SEXPLES/”, “,”,, “,”,
“Lints”: “Parallel-Lint ./Src-Blame —- excluir al proveedor && Parallel-Lint ./tests — bllame —- Excluir proveedor”
}
Me gusta esta modularidad, porque significa que puedo ejecutar cada proceso por separado, pero la mayoría de las veces, solo uso las “pruebas del compositor”.
Si tiene curiosidad, aquí hay un compositor. Completamente para un complemento de WordPress que utiliza las herramientas que hemos descrito en este artículo.Te animo a que uses estas herramientas en tu código, sé que me ayudaron mucho.Estoy emocionado de encontrar nuevos sniffs o incluso hacer mis propios olores.Esto me ayudará a mí y a mi equipo a escribir un código mejor y más consistente.Les deseo un código mejor y más consistente, así como otros sentimientos y emociones positivas para usted.

Copyright statement: Unless otherwise noted, this article is Collected from the Internet, please keep the source of the article when reprinting.

Check Also

gkOVSBm5B8SgiXmo

Shopify vs WooCommerce – ¿Cuál es la mejor plataforma?(Comparación)

Shopify vs WooCommerce

Leave a Reply

Your email address will not be published. Required fields are marked *