deSymfony 2013

Anotaciones, no es parte de mi aplicación, pero es mi aplicación

Ariel Ferrandini  · 

Presentación

Vídeo

Transcripción

Extracto de la transcripción automática del vídeo realizada por YouTube.

buenas tardes a todos yo voy a hablar sobre anotaciones supongo que de aquí casi todos habréis usado symphony alguno que no haya usado symphony bueno espero que esto os haga pensar y que uséis symphony y bueno os voy a explicar os voy a intentar que al final

de la charla os quede claro porque no son parte de nuestra aplicación pero al fin y al cabo si en nuestra aplicación las anotaciones bueno también dar las gracias a todos los patrocinadores que hacen posible este evento todos los años gracias a la organización

que sin ellos tampoco habría habría evento y también a vosotros los asistentes que obviamente sin vosotros y quien habría evento sería simplemente una reunión de friki y poco más bueno sé que él ahora es complicada vamos a estar aquí aproximadamente de 1 a

2 algunos ya están pensando en que tengo hambre vale yo voy a intentar no hablar de comida así que pues vamos a empezar para empezar quiero también que sepáis un poco quién soy bueno media mar y el nombre super común por aquí por esta zona el apellido también

es súper común nací en el 85 año en el que nace 'super mario' supongo que casi todos lo conocéis nació 'microsoft lo conocéis todo es seguro alguien no lo conoce es obvio vale también hacen nuestra querida amiga pantalla de la muerte y bueno soy

programador desde hace aproximadamente unos 10 años antes trabajar en una empresa es me movió bastante como habréis visto la mayoría de la gente por aquí y bueno si un symphony lovers desde 0 98 beta la verdad fue un flechazo y symphony g tengo que tenemos

que hacer algo con ellos y fue fue un flechazo básicamente luego tenía algunos roces en la pareja dijo que quería tirar el admirador eso a mí no me gustó mucho pero bueno siempre las parejas hay que pasar por algunas cosas y bueno tenemos un par de para dígitos

aquí lo tomo con un elefantito y tal y bueno también soy un irle adopter de symphony a día de hoy están todas las conferencias y bueno espero seguir poder venir a muchas más y algo relacionado así conmigo porque me gusta viajar así que si alguno vive por allá

afuera y me invita a su casa encantado bueno y también me queréis invitar a un chuletón os he dicho que no iba a hablar de comida pero es inevitable bueno vamos a empezar ahora de verdad después de estos cinco minutos y vamos a ver dónde está el origen de

las anotaciones el origen de las tentaciones no os pensé que este en php sino que está en java y todo nace en 2002 mediante una especificación jsr bueno antes de nada las anotaciones pues son textos que se agregan una nota crítica que se agrega a un texto

básicamente y bueno las anotaciones en java las aprobaron en 2004 o sea que de 2004 a que las tenemos en php ha pasado un año y un poquito según esta especificación nos dice que las anotaciones no afectan directamente a la semántica del programa pero afectan

a la forma en que los programas son tratados por herramientas y bibliotecas que a su vez éstas pueden afectar a la semántica del programa en ejecución y que pueden ser leídas vamos a ver dejamos aquí vamos a dejarnos esto vale y no sé qué es lo que pone la

especificación y punto para entender realmente las anotaciones vamos a ver cómo funcionan básicamente si todos conocéis el protocolo http lo que tenemos es un usuario que nos hace una petición a nuestro servidor y si habéis trabajado estamos trabajando con

sinfonía o con algún otro framework lo más normal es que esa petición llega a nuestro front controller nuestro from controller en el caso de symphony lo que hace es levantar un sifón y kernel y éste symphony kernel a su vez va a generar una serie de eventos

no sé ya habéis llegado a destripar un poquito symphony pues tenemos eventos como por ejemplo el evento que controles que es cada vez que se ejecuta una acción o se va a ejecutar una acción pues dice oye voy ha ejecutado esta acción y mira a ver si alguien

quiere hacer algo vale con un ligero nosotros lo que se hace con las anotaciones básicamente es declarar un driver que le basta hacer lo que va a hacer es escuchar a uno de esos eventos que van a producir symphony o el kernel o cualquier otro evento que tengamos

este driver va a hacer uso de un servicio que se llama reader que después veremos bueno no lo voy a destripar porque nos podríamos tirar aquí de semana pero hace uso de un servicio que se llama reader para leer las anotaciones que hay en una clase y con eso

modificar el flujo de nuestra aplicación por eso decía en la especificación que modifica la semántica de nuestra aplicación vale si no tuviésemos anotaciones la ejecución sería completamente lineal y lo que hacemos con las notaciones es saltarnos esa ejecución

lineal finalmente generamos un objeto response y llevamos al usuario bueno pero como son las anotaciones del symphony vale vamos a ver ahora un poco que anotaciones tenemos el symphony entonces de aquí cuantos todas las anotaciones el symphony bastante y los

que no los hay bueno que sí son bastante sutiles bueno las anotaciones de symphony nos vienen todas o la mayoría o quizás las más importantes a través del framework extra van del esteban del primero tendríamos que habilitar las anotaciones en el fichero del

confín y vemos aquí que ya tenemos cuatro tipos de anotaciones a su vez os digo que cada vez que tengamos una anotación siempre vamos a tener que agregar con esas anotaciones o la clase de la anotación en nuestro en nuestra clase donde donde la vamos a utilizar

bueno las anotaciones de enrutamiento tienen un caso especial que es que cada vez que nosotros utilicemos esas anotaciones vamos a tener que específicamente decir que esa anotación es de tipo que esa configuración es de tipo anotación vale sin esto no funcionaría

y bueno con enrutamiento tenemos la anotación root que lo que nos va a permitir es configurar rutas con anotaciones vale muy sencillito en el ejemplo que estamos viendo aquí lo que tenemos es un control en el cual le hemos metido un prefijo que será barra

agenda y a nuestra acción agenda le decimos que va a tener la ruta raíz con las notaciones podemos también agregar parámetros en la ruta que nos van a llegar a nuestra acción mediante parámetros del método después como veis aquí lo que tenemos son diferentes

opciones para la misma anotación en la cual podemos decir que vamos a que los requisitos de un parámetro sean por ejemplo de tipo numérico y si agregamos un valor por defecto para nuestro parámetro ese parámetro tenéis que tener muy en cuenta que deja de ser

[ ... ]

Nota: se han omitido las otras 3.186 palabras de la transcripción completa para cumplir con las normas de «uso razonable» de YouTube.