View
230
Download
1
Category
Preview:
Citation preview
Introducción a la programación en Joomla!
Sobre mi
Email: roberto@phproberto.com Twitter: @phproberto
● Desarrollador freelance● Contribuidor a Joomla! CMS & Framework ● Contribuidor a Twitter Bootstrap,
Prestashop, K2, Joostrap● Mantenedor de Joomla en Github● Miembro del Joomla Production Leadership
Team (PLT)
¿Por qué Joomla?
Joomla vs otros
➔ WordPress = Peor código & mayor cuota de mercado➔ Drupal = mejor código & menor cuota de mercado
✔ Evolucionable / sostenible✔ POO, MVC... mejores prácticas✔ Multilenguaje nativo✔ Usado en todo el mundo✔ +7800 extensiones✔ 100% responsive✔ Aprende de sus errores✔ OSM (fundación) + meritocracia✔ Documentación✔ Una gran familia✔ Pruebas unitarias
Versiones
1. Versión MAYOR si haces cambios incompatibles en la API2. Versión MENOR si añades una funcionalidad compatible3. Parche para solucionar fallos de manera compatible
Ventajas como programador
➔ Git➔ Phpcs➔ Phing, Grunt, Gulp➔ XDebug➔ LESS, Sass➔ Diseño responsive➔ Curva de aprendizaje estable➔ Desarrolla extensiones de extensiones➔ Evoluciona como programador
+ inglés = trabajo!
Ventajas contribuidor
➔Escaparate internacional➔Ser corregido por los mejores➔Realización personal➔Ventaja competitiva empresa➔Clientes indirectos➔Crea la última tecnología➔Sinergias con otros desarrolladores➔Patrocinio eventos Joomla
Casos de éxito
➔ Peter Van Westen➔ Nicholas Dionysopoulos ➔ Nueva ley de cookies = $$$$$
Licencias
GPL
● Requerido para JED● Licencia vírica
Ventajas
● Cualquiera puede retomar tu proyecto● Confianza del cliente● Contribuciones● Fácil contratación
Modelos de negocio
● Creación de sitios web● Desarrollo de extensiones● Consultoría● Subcontratación por
terceros
Perfecto ecosistema!
Desarrollo de extensiones
✔ Git no es opcional✔ Keep It Simple Stupid (KISS)✔ Itera, mejora✔ Actualización = valor añadido✔ Considera RAD✔ Don't Repeat Yourself (DRY)✔ Soporte para 2.5 y 3.x✔ Joomla estandars
Recuerda
● Copia, copia y copia● Documentación de calidad● Foro de soporte / contacto● Actualiza JED por la mañana :)● Gestiona tu tiempo / tareas● Conexión con otras extensiones● 1 extensión en JED ~ 100 visitantes● Skype
Herramientas - IDE
● Sublime Text● PhpStorm● Netbeans● Eclipse
Herramientas – Control de versiones
Herramientas – Tareas
Nada que no permita controlar tu tiempo!
Recursos
Documentación – docs.joomla.orgForo – forum.joomla.orgGrupo google - Joomla! CMS DevelopmentCMSGrupo google - Joomla! General DevelopmentGrupo google - Framework on Framework
Desarrollo componente MVC:http://docs.joomla.org/J2.5:Developing_a_MVC_Component/Introduction
y....
“Before software can be reusable it first has to be usable.”
Ralph Johnson (computer scientist)
Recommended