LinuxParty
Se uno de Joomla! La fuerza clave radica en su extensibilidad mediante el uso de extensiones de Joomla. Si le apasiona el desarrollo web y desea contribuir a la comunidad de Joomla, convertirse en desarrollador de extensiones de Joomla puede ser un camino gratificante a seguir. En este artículo, exploraremos el conocimiento y las habilidades requeridas, junto con algunas cosas esenciales que se deben y no se deben hacer, para ayudarlo a embarcarse en su viaje como desarrollador de extensiones de Joomla.
Junto a cada enlace original hemos puesto [TAdI] que significa "Traducción Automática del Inglés", para su comodidad.
Aprende lo básico
No se puede desarrollar para la web hoy en día sin una comprensión básica de HTML y CSS. Así que trate de seguir un par de guías de inicio sobre cómo funcionan. Además, conocer JavaScript le dará a su extensión un extra en la experiencia del usuario con seguridad.
Joomla está desarrollado en PHP, por lo que la mayor parte del tiempo estará escribiendo o usando código PHP en su extensión. No necesita ser un gurú de PHP, pero conocer los conceptos básicos de PHP moderno lo ayudará a desarrollar mejores extensiones.
Como todo lenguaje de programación, en PHP tienes múltiples recomendaciones, o patrones de diseño. Estos diseños son solo una solución para un problema repetitivo que cualquiera encontró alguna vez. Si hay un patrón de diseño simple que necesita saber al programar extensiones de Joomla, ese es el patrón de diseño Modelo-Vista-Controlador (MVC) . Este patrón es tan extenso en Joomla que afecta la filosofía y la usabilidad de todo el sistema.
Escribir código
La mejor manera de aprender el desarrollo de Joomla Extension es creando extensiones reales. Comience con proyectos simples y avance gradualmente hacia proyectos más complejos.
Comience a construir un complemento de Joomla [ TAdI ]. Es la extensión más simple que puede escribir en Joomla y también, podría ser realmente poderosa. Después de su primer complemento simple, puede seguir mejorando su estructura de código para usar el nuevo patrón de inyección de contenedor que ahora es parte de cada extensión de Joomla.
Escriba soluciones, no código
Vale, parece que va en contra del consejo anterior, pero ¿sabes qué tienen en común las extensiones de Joomla mejor valoradas? Comenzaron como una solución para un problema al que se enfrentaban sus desarrolladores. Estos desarrolladores necesitaban resolver un problema con sus clientes y les resultó más fácil hacerlo con una extensión. Entonces finalmente decidieron publicar el código.
Puedes pensar que después de 18 años de Joomla, todos los problemas están resueltos, pero eso está lejos de ser cierto. Simplemente consulte los foros de Joomla , los subreddits de Joomla o el intercambio de pilas de Joomla [ TAdI ]. y verá muchos problemas que la gente necesita resolver.
Tomarse un minuto para ayudar a estos usuarios le dará 2 beneficios:
- Aprenderá mucho sobre el funcionamiento interno de Joomla y cómo funcionan algunas extensiones de terceros.
- Practicará la escritura de fragmentos de código simples que resuelven los problemas que enfrentan estos usuarios.
Eventualmente, identificará un problema que podría resolverse con una extensión y estará listo para crear su primera extensión.
Robar código
Sigo contradiciéndome a mí mismo... Pero debes confiar en el mantra:
"Los buenos codificadores escriben código, los mejores codificadores lo roban"
Esto no significa copiar y pegar código desde cualquier parte de su extensión, sino inspirarse en otros desarrolladores.
El directorio de extensiones de Joomla (JED) proporciona una amplia colección de extensiones existentes que puede estudiar y analizar para comprender su estructura y funcionalidad.
Verifique su código, analice por qué usan array_map
en lugar de una estructura foreach
e intente entrar en sus cabezas. Eso te ayudará a aprender prácticas de diseño de los mejores.
Estar al día:
Joomla es una plataforma en evolución, y mantenerse al día con los últimos desarrollos es esencial. Realice un seguimiento del sitio web oficial de Joomla, los foros de desarrolladores y los blogs relevantes para mantenerse informado sobre nuevas funciones, actualizaciones y pautas de seguridad.
Actualice regularmente sus conocimientos para asegurarse de que sus extensiones sigan siendo compatibles con la última versión de Joomla.
Configure un entorno de desarrollo (y siéntase cómodo con él)
Lo primero es lo primero, debe elegir un editor de código con el que se sienta cómodo. Una opción muy popular es "Code by Microsoft". Se puede ampliar con complementos e incluso tenemos un canal comunitario en Mattermost para compartir consejos al respecto. Además, los desarrolladores de Joomla Core están enamorados de PHPStorm y debo confesar que soy de esos locos que usan Vim para codificar... De todos modos, usa lo que te parezca bien.
Una vez que elija su editor, debe configurar un entorno de prueba. Puede optar por instalar su propio servidor web en su máquina local, configurar un servidor remoto o usar Docker para tener su entorno. En cualquier caso, no se sorprenda con las luces brillantes de los entornos dockerizados integrados con CI y pruebas automatizadas. Esa es una configuración compleja de crear y es posible que no se sienta cómodo con ella.
Encuentro el servicio de launch.joomla.org muy conveniente como punto de partida. No tendrá que preocuparse por configurar o mantener el servicio y tiene todos los elementos básicos de un servidor web.
Personalmente, comencé a desarrollar en mi máquina local utilizando una instalación local de Apache, MySQL y PHP. Fue agradable al principio, pero a medida que PHP comenzó a evolucionar y tuve la necesidad de probar varias versiones de PHP, todo se volvió más complejo. Hoy en día, uso principalmente un servidor remoto para mis pruebas y, a veces, uso docker en mi computadora para probar localmente.
Publica tu código
Finalmente, una vez que llegue a algo que crea que podría ser útil para otros, hágalo público. No importa que no tengas un sitio web para distribuirlo. Hoy en día, puedes usar GitHub para almacenar y publicar tus lanzamientos y, en caso de que quieras cobrar por la extensión, puedes usar servicios como FastSpring o GumRoad para solicitar una tarifa.
Pero tienes que publicarlo. Leonardo Da Vinci (el genio italiano) dijo:
el agua estancada pierde su pureza; aun así tu código se oxida por no ser publicado.
Entonces, ponlo a disposición del mundo 😜.
Consejos rápidos para su código
- Siga los estándares de codificación y las mejores prácticas de Joomla para garantizar la calidad y la capacidad de mantenimiento de sus extensiones.
- Escriba código limpio y modular para que sus extensiones sean más flexibles y fáciles de mantener.
- Use xdebug para obtener más información sobre Joomla y ver cómo se integra su código en el sistema.
- Actualice y mejore continuamente sus extensiones según los comentarios de los usuarios y los requisitos cambiantes.
- No pase por alto las prácticas de seguridad. Joomla tiene funciones de seguridad integradas, pero es importante seguir prácticas de codificación seguras para proteger sus extensiones de vulnerabilidades.
- No copie ni modifique las extensiones existentes sin el debido permiso o atribución. Respete los derechos de propiedad intelectual y los términos de la licencia.
- No ignore la documentación. Documente su código y proporcione instrucciones claras para la instalación, configuración y uso de sus extensiones. Las extensiones bien documentadas tienen más probabilidades de ser adoptadas por los usuarios.
Conclusión
Convertirse en desarrollador de Joomla Extension es un viaje emocionante y gratificante para cualquier persona apasionada por el desarrollo web. Al construir una base sólida en tecnologías web, dominar el marco de trabajo de Joomla, adquirir experiencia práctica, mantenerse actualizado con los últimos desarrollos e interactuar con la comunidad de Joomla, puede desbloquear un mundo de posibilidades.
Recuerde adherirse a los estándares de codificación, priorizar la seguridad y contribuir positivamente al ecosistema de Joomla. Adopte el aprendizaje y la mejora continuos para crear extensiones de alta calidad que agreguen valor a la comunidad de Joomla. ¡Feliz codificación!
Estamos en mayo, es un gran momento para florecer como desarrollador de Joomla Extension 😉.
-
Programación
- Thomas E. Kurtz, coinventor de BASIC, muere a los 96 años
- Profesor de informática del MIT prueba el impacto de la IA en la formación de programadores
- Lanzamiento del IDE de código abierto Qt Creator 14 con soporte para complementos basados en Lua
- Plantillas para Joomla - Episodio 1: Plantillas, marcos y clubes o no...
- Este es el mejor libro que he visto para aprender a programar en Python en castellano desde cero, gratis y online
- ¿Deberían los niños seguir aprendiendo a programar en la era de la IA?
- La 'obsolescencia' de VBScript confirmada por Microsoft y su eventual eliminación de Windows
- El Gran Debate: ¿Deberían los Modelos de Inteligencia Artificial Ser de Código Abierto?
- El lenguaje de programación BASIC cumple 60 años
- El CEO de Nvidia dice que los niños no deberían aprender a programar
- 40 años de Turbo Pascal: recuerdos del dinosaurio codificador que revolucionó los IDE
- Los lenguajes de programación más populares y dónde aprenderlos.
- Top 5 de los principales lenguajes de programación para desarrollar aplicaciones de escritorio Linux
- Qt Creator 12 lanzado con complementos de grabación de pantalla y Explorador de compiladores
- 10 sitios web para practicar problemas de programación