SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
Acerca de mí
Drupal Developer en
Maintainer de algunos módulos
como Twitter o OAuth (juampy).
Autor de Drush User's Guide
Acerca de Drupal
2% de la Web usa Drupal Fuente: http://buytaert.net/
Eventos en todo el mundo
http://www.garfieldtech.com/presentations/sflportland-drupal8-symfony2/#/2/3
Pero...
Drupal es un
proyecto
Open Source
que se creó hace
12 años.
Toca saldar deuda
técnica.
http://3.bp.blogspot.com
http://buytaert.net/the-future-is-a-restful-drupal
Febrero 2012: primera reunión
(presencial)
¿Qué se ha hecho hasta
ahora?
http://m.forocoches.com
ClassLoader
● Carga automática de clases (PSR-0).
● Reemplaza al registro de clases de Drupal.
HTTP Foundation y HttpKernel
Routing
Reemplaza hook_menu() por mimodulo.
routing.yml + Controller/Form.
Routing (2)
En hook_menu() sólo queda el título de la
página.
Routing (3)
En dblog.routing.yml: la ruta, reglas de acceso
y controllador.
Routing (4)
En el controllador, la lógica de control.
EventDispatcher
Como nuestros hooks, pero:
● OOO
● Agrupables
● Testeables
En Drupal 8 convivirá con los
hooks.
Drupal 9 no tendrá hooks.
http://img.desmotivaciones.es
DependencyInjection
Por fin :D
Para código procedural, Drupal::service('id') :(
Doctrine (common)
Sólo para procesar annotations.
Otros proyectos OS incorporados
JQuery Backbone
CKEditor Modrnizr
Farbtastic Grippie
Normalize Composer
PHPUnit Guzzle Zend
Feed
Al fin... test unitarios de verdad
http://www.carlescliment.com/blog/testing-unitario-drupal
¿Y qué pinto yo en todo esto?
https://drupal.org/getting-involved
IRC: #Drupal-Contribute y
#Drupal-WSCCI
https://drupal.org/project/drupal/git-
instructions
¡Gracias! ¿Preguntas?
http://about.me/juampy
@juampy72
Recursos
http://buytaert.net/the-future-is-a-restful-drupal
http://2012.drupalcamp.es/sites/default/files/slides/symfony-drupal-8.pdf
http://www.garfieldtech.com/presentations/dcmunich2012-wscci
http://crossfunctional.net/blog/2013/mar/symfony-components-in-drupal-8
http://symfony.com/blog/symfony2-meets-drupal-8
https://speakerdeck.com/player/4f6a3e51d171350022008299?slide=1#
http://previousnext.com.au/blog/understanding-drupal-8s-plugin-system
http://blog.erdfisch.de/2012/09/hands-introduction-drupal-8-plugin-system
https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md
https://github.com/Crell/slides-drupal8-symfony2

Más contenido relacionado

Destacado

Refactoring PHP/Symfony2 apps
Refactoring PHP/Symfony2 appsRefactoring PHP/Symfony2 apps
Refactoring PHP/Symfony2 appsRaul Fraile
 
Command-line tools en PHP - deSymfony 2013
Command-line tools en PHP - deSymfony 2013Command-line tools en PHP - deSymfony 2013
Command-line tools en PHP - deSymfony 2013Adán Lobato Lorenzo
 
Drupal 8 Authentication
Drupal 8 AuthenticationDrupal 8 Authentication
Drupal 8 AuthenticationJuampy NR
 
deSymfony 2013: Anotaciones, no es parte de mi aplicación, pero es mi aplicación
deSymfony 2013: Anotaciones, no es parte de mi aplicación, pero es mi aplicacióndeSymfony 2013: Anotaciones, no es parte de mi aplicación, pero es mi aplicación
deSymfony 2013: Anotaciones, no es parte de mi aplicación, pero es mi aplicaciónaferrandini
 
Architecture of Drupal - Drupal Camp
Architecture of Drupal - Drupal CampArchitecture of Drupal - Drupal Camp
Architecture of Drupal - Drupal CampDipen Chaudhary
 
Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2Ricard Clau
 
Drupal Development
Drupal DevelopmentDrupal Development
Drupal DevelopmentJeff Eaton
 
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...Pablo Godel
 
When cqrs meets event sourcing
When cqrs meets event sourcingWhen cqrs meets event sourcing
When cqrs meets event sourcingManel Sellés
 

Destacado (12)

An Introduction to Drupal
An Introduction to DrupalAn Introduction to Drupal
An Introduction to Drupal
 
Silex al límite
Silex al límiteSilex al límite
Silex al límite
 
Refactoring PHP/Symfony2 apps
Refactoring PHP/Symfony2 appsRefactoring PHP/Symfony2 apps
Refactoring PHP/Symfony2 apps
 
Command-line tools en PHP - deSymfony 2013
Command-line tools en PHP - deSymfony 2013Command-line tools en PHP - deSymfony 2013
Command-line tools en PHP - deSymfony 2013
 
Drupal 8 Authentication
Drupal 8 AuthenticationDrupal 8 Authentication
Drupal 8 Authentication
 
deSymfony 2013: Anotaciones, no es parte de mi aplicación, pero es mi aplicación
deSymfony 2013: Anotaciones, no es parte de mi aplicación, pero es mi aplicacióndeSymfony 2013: Anotaciones, no es parte de mi aplicación, pero es mi aplicación
deSymfony 2013: Anotaciones, no es parte de mi aplicación, pero es mi aplicación
 
Architecture of Drupal - Drupal Camp
Architecture of Drupal - Drupal CampArchitecture of Drupal - Drupal Camp
Architecture of Drupal - Drupal Camp
 
Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2
 
Drupal Development
Drupal DevelopmentDrupal Development
Drupal Development
 
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
 
When cqrs meets event sourcing
When cqrs meets event sourcingWhen cqrs meets event sourcing
When cqrs meets event sourcing
 
reveal.js 3.0.0
reveal.js 3.0.0reveal.js 3.0.0
reveal.js 3.0.0
 

Similar a Symfony y Drupal

R shiny-grupo-usuarios-r-def
R shiny-grupo-usuarios-r-defR shiny-grupo-usuarios-r-def
R shiny-grupo-usuarios-r-defPedro Concejero
 
[Drupal camp] herramientas que no deberían de faltar en el desarrollo de dr...
[Drupal camp]   herramientas que no deberían de faltar en el desarrollo de dr...[Drupal camp]   herramientas que no deberían de faltar en el desarrollo de dr...
[Drupal camp] herramientas que no deberían de faltar en el desarrollo de dr...Luis Eduardo Telaya Escobedo
 
[Phpdayperu] drupal 8 console
[Phpdayperu] drupal 8 console[Phpdayperu] drupal 8 console
[Phpdayperu] drupal 8 consoleEduardo Telaya
 
[DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9
[DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9[DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9
[DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9Keopx
 
Introduccion técnica a Drupal
Introduccion técnica a DrupalIntroduccion técnica a Drupal
Introduccion técnica a DrupalPedro Cambra
 
Drupal 7 (2)
Drupal 7 (2)Drupal 7 (2)
Drupal 7 (2)jecol59
 
Git y drupal
Git y drupalGit y drupal
Git y drupalJuampy NR
 
Drupal Cron
Drupal CronDrupal Cron
Drupal Cronrcechang
 
Anatomía de implementación de un LCMS basado en moodle
Anatomía de implementación de un LCMS basado en moodleAnatomía de implementación de un LCMS basado en moodle
Anatomía de implementación de un LCMS basado en moodleJosé Luis Granda
 
[DrupalCampSpain2023] Introducción al desarrollo de módulos en Drupal 10
[DrupalCampSpain2023] Introducción al desarrollo de módulos en Drupal 10[DrupalCampSpain2023] Introducción al desarrollo de módulos en Drupal 10
[DrupalCampSpain2023] Introducción al desarrollo de módulos en Drupal 10Keopx
 
Django - Plataforma de sitios web
Django - Plataforma de sitios webDjango - Plataforma de sitios web
Django - Plataforma de sitios webjcarazo
 
Creando módulos en Drupal 7
Creando módulos en Drupal 7Creando módulos en Drupal 7
Creando módulos en Drupal 7Edgar Dueñas
 
Introducción general a Drupal
Introducción general a DrupalIntroducción general a Drupal
Introducción general a DrupalPedro Cambra
 
Presente y futuro de la Drupal Admin UI - Drupal Camp Costa Rica 2020
Presente y futuro de la Drupal Admin UI - Drupal Camp Costa Rica 2020Presente y futuro de la Drupal Admin UI - Drupal Camp Costa Rica 2020
Presente y futuro de la Drupal Admin UI - Drupal Camp Costa Rica 2020Cristina Chumillas
 

Similar a Symfony y Drupal (20)

R shiny-grupo-usuarios-r-def
R shiny-grupo-usuarios-r-defR shiny-grupo-usuarios-r-def
R shiny-grupo-usuarios-r-def
 
Site building
Site buildingSite building
Site building
 
Drupal Sitebuilding 101
Drupal Sitebuilding 101Drupal Sitebuilding 101
Drupal Sitebuilding 101
 
Drupal8 Symfony2 en DrupalCS
Drupal8 Symfony2 en DrupalCSDrupal8 Symfony2 en DrupalCS
Drupal8 Symfony2 en DrupalCS
 
[Drupal camp] herramientas que no deberían de faltar en el desarrollo de dr...
[Drupal camp]   herramientas que no deberían de faltar en el desarrollo de dr...[Drupal camp]   herramientas que no deberían de faltar en el desarrollo de dr...
[Drupal camp] herramientas que no deberían de faltar en el desarrollo de dr...
 
[Phpdayperu] drupal 8 console
[Phpdayperu] drupal 8 console[Phpdayperu] drupal 8 console
[Phpdayperu] drupal 8 console
 
Drupal 8 consola
Drupal 8 consolaDrupal 8 consola
Drupal 8 consola
 
Dc salad
Dc saladDc salad
Dc salad
 
Curso CDA: Drush CLI Drupal
Curso CDA: Drush CLI DrupalCurso CDA: Drush CLI Drupal
Curso CDA: Drush CLI Drupal
 
[DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9
[DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9[DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9
[DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9
 
Introduccion técnica a Drupal
Introduccion técnica a DrupalIntroduccion técnica a Drupal
Introduccion técnica a Drupal
 
Drupal 7 (2)
Drupal 7 (2)Drupal 7 (2)
Drupal 7 (2)
 
Git y drupal
Git y drupalGit y drupal
Git y drupal
 
Drupal Cron
Drupal CronDrupal Cron
Drupal Cron
 
Anatomía de implementación de un LCMS basado en moodle
Anatomía de implementación de un LCMS basado en moodleAnatomía de implementación de un LCMS basado en moodle
Anatomía de implementación de un LCMS basado en moodle
 
[DrupalCampSpain2023] Introducción al desarrollo de módulos en Drupal 10
[DrupalCampSpain2023] Introducción al desarrollo de módulos en Drupal 10[DrupalCampSpain2023] Introducción al desarrollo de módulos en Drupal 10
[DrupalCampSpain2023] Introducción al desarrollo de módulos en Drupal 10
 
Django - Plataforma de sitios web
Django - Plataforma de sitios webDjango - Plataforma de sitios web
Django - Plataforma de sitios web
 
Creando módulos en Drupal 7
Creando módulos en Drupal 7Creando módulos en Drupal 7
Creando módulos en Drupal 7
 
Introducción general a Drupal
Introducción general a DrupalIntroducción general a Drupal
Introducción general a Drupal
 
Presente y futuro de la Drupal Admin UI - Drupal Camp Costa Rica 2020
Presente y futuro de la Drupal Admin UI - Drupal Camp Costa Rica 2020Presente y futuro de la Drupal Admin UI - Drupal Camp Costa Rica 2020
Presente y futuro de la Drupal Admin UI - Drupal Camp Costa Rica 2020
 

Más de Juampy NR

GitHub Pull Request Builder for Drupal
GitHub Pull Request Builder for DrupalGitHub Pull Request Builder for Drupal
GitHub Pull Request Builder for DrupalJuampy NR
 
Por qué Drupal es un potente gestor de contenidos
Por qué Drupal es un potente gestor de contenidosPor qué Drupal es un potente gestor de contenidos
Por qué Drupal es un potente gestor de contenidosJuampy NR
 
Trabajar en una empresa distribuida - DrupalCamp Mexico 2014
Trabajar en una empresa distribuida - DrupalCamp Mexico 2014Trabajar en una empresa distribuida - DrupalCamp Mexico 2014
Trabajar en una empresa distribuida - DrupalCamp Mexico 2014Juampy NR
 
Learn through the issue queue
Learn through the issue queueLearn through the issue queue
Learn through the issue queueJuampy NR
 
Drush workshop
Drush workshopDrush workshop
Drush workshopJuampy NR
 
Taller de Simpletest - Drupal Day Valencia 2012
Taller de Simpletest - Drupal Day Valencia 2012Taller de Simpletest - Drupal Day Valencia 2012
Taller de Simpletest - Drupal Day Valencia 2012Juampy NR
 
Aegir: un Drupal para gobernarlos a todos
Aegir: un Drupal para gobernarlos a todosAegir: un Drupal para gobernarlos a todos
Aegir: un Drupal para gobernarlos a todosJuampy NR
 

Más de Juampy NR (7)

GitHub Pull Request Builder for Drupal
GitHub Pull Request Builder for DrupalGitHub Pull Request Builder for Drupal
GitHub Pull Request Builder for Drupal
 
Por qué Drupal es un potente gestor de contenidos
Por qué Drupal es un potente gestor de contenidosPor qué Drupal es un potente gestor de contenidos
Por qué Drupal es un potente gestor de contenidos
 
Trabajar en una empresa distribuida - DrupalCamp Mexico 2014
Trabajar en una empresa distribuida - DrupalCamp Mexico 2014Trabajar en una empresa distribuida - DrupalCamp Mexico 2014
Trabajar en una empresa distribuida - DrupalCamp Mexico 2014
 
Learn through the issue queue
Learn through the issue queueLearn through the issue queue
Learn through the issue queue
 
Drush workshop
Drush workshopDrush workshop
Drush workshop
 
Taller de Simpletest - Drupal Day Valencia 2012
Taller de Simpletest - Drupal Day Valencia 2012Taller de Simpletest - Drupal Day Valencia 2012
Taller de Simpletest - Drupal Day Valencia 2012
 
Aegir: un Drupal para gobernarlos a todos
Aegir: un Drupal para gobernarlos a todosAegir: un Drupal para gobernarlos a todos
Aegir: un Drupal para gobernarlos a todos
 

Último

Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosJhonJairoRodriguezCe
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 

Último (10)

Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 

Symfony y Drupal