View
506
Download
5
Category
Preview:
Citation preview
λIntroduccion a Symfony
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org
Universidad de la Frontera
05 de Octubre de 2009
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 1/1
λ
Indice
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 2/1
λ
Que es PHP
Es un lenguaje para programar scripts del lado del servidor, quese incrustan dentro del codigo HTML.Dado que php se ejecuta del lado del servidor usualmente loutilizamos para gestionar lo que llamamos la ”logica del negocio”.
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 3/1
λ
Que es PHP
Es un lenguaje para programar scripts del lado del servidor, quese incrustan dentro del codigo HTML.Dado que php se ejecuta del lado del servidor usualmente loutilizamos para gestionar lo que llamamos la ”logica del negocio”.
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 3/1
λ
Exigencias del desarrollo web actual
Estandarizacion w3c
Mantenibilidad
Eslabilidad
Usablilidad
Optimos
Adaptarse con el menor esfuerzo a un nuevo requerimiento
Facilitar la deteccion solucion de errores
Viables a corto plazo :s
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 4/1
λ
Exigencias del desarrollo web actual
Estandarizacion w3c
Mantenibilidad
Eslabilidad
Usablilidad
Optimos
Adaptarse con el menor esfuerzo a un nuevo requerimiento
Facilitar la deteccion solucion de errores
Viables a corto plazo :s
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 4/1
λ
Exigencias del desarrollo web actual
Estandarizacion w3c
Mantenibilidad
Eslabilidad
Usablilidad
Optimos
Adaptarse con el menor esfuerzo a un nuevo requerimiento
Facilitar la deteccion solucion de errores
Viables a corto plazo :s
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 4/1
λ
Exigencias del desarrollo web actual
Estandarizacion w3c
Mantenibilidad
Eslabilidad
Usablilidad
Optimos
Adaptarse con el menor esfuerzo a un nuevo requerimiento
Facilitar la deteccion solucion de errores
Viables a corto plazo :s
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 4/1
λ
Exigencias del desarrollo web actual
Estandarizacion w3c
Mantenibilidad
Eslabilidad
Usablilidad
Optimos
Adaptarse con el menor esfuerzo a un nuevo requerimiento
Facilitar la deteccion solucion de errores
Viables a corto plazo :s
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 4/1
λ
Exigencias del desarrollo web actual
Estandarizacion w3c
Mantenibilidad
Eslabilidad
Usablilidad
Optimos
Adaptarse con el menor esfuerzo a un nuevo requerimiento
Facilitar la deteccion solucion de errores
Viables a corto plazo :s
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 4/1
λ
Exigencias del desarrollo web actual
Estandarizacion w3c
Mantenibilidad
Eslabilidad
Usablilidad
Optimos
Adaptarse con el menor esfuerzo a un nuevo requerimiento
Facilitar la deteccion solucion de errores
Viables a corto plazo :s
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 4/1
λ
Exigencias del desarrollo web actual
Estandarizacion w3c
Mantenibilidad
Eslabilidad
Usablilidad
Optimos
Adaptarse con el menor esfuerzo a un nuevo requerimiento
Facilitar la deteccion solucion de errores
Viables a corto plazo :s
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 4/1
λ
Frameworks
Un framework es un marco de trabajo disenado para facilitar eldesarrollo proporcionando tareas recorrentes y aburridas de una
manera facil u automatizada.Symfony es un framework para desarrollar aplicaciones en php.
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 5/1
λ
MVC
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 6/1
λ
MVC
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 6/1
λ
Desarrollo rapido y de mejor calidad
Menos codigo
Menos complejidad
Menores Bugs
Mas Productividad
Mas tiempo
Es preferible invertir el tiempo en entender el problema, definirreglas de negocio, planificar pruebas , etc ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 7/1
λ
Desarrollo rapido y de mejor calidad
Menos codigo
Menos complejidad
Menores Bugs
Mas Productividad
Mas tiempo
Es preferible invertir el tiempo en entender el problema, definirreglas de negocio, planificar pruebas , etc ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 7/1
λ
Desarrollo rapido y de mejor calidad
Menos codigo
Menos complejidad
Menores Bugs
Mas Productividad
Mas tiempo
Es preferible invertir el tiempo en entender el problema, definirreglas de negocio, planificar pruebas , etc ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 7/1
λ
Desarrollo rapido y de mejor calidad
Menos codigo
Menos complejidad
Menores Bugs
Mas Productividad
Mas tiempo
Es preferible invertir el tiempo en entender el problema, definirreglas de negocio, planificar pruebas , etc ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 7/1
λ
Desarrollo rapido y de mejor calidad
Menos codigo
Menos complejidad
Menores Bugs
Mas Productividad
Mas tiempo
Es preferible invertir el tiempo en entender el problema, definirreglas de negocio, planificar pruebas , etc ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 7/1
λ
El costo de vivir en el pasado
Cinicial =∑n
i=1 Cdesarollo +∑n
i=1 Ctesting
Cmantencion ≥≥≥ Cinicial
Cmantencion =∑n
i=1 Ccomprension +∑n
i=1 Ccambio +∑ni=1 Ctesting +
∑ni=1 Cimplementacion
Es preferible invertir tiempo en escribir un codigo entendidble yestandarizado para el cual se podran conseguir programadoresque entendran esta logica de manera facil en el futuro.
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 8/1
λ
Veamos ahora un ejemplo practico !!!
Ejemplo en vivo,¿hay alguna duda hasta el momento?
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 9/1
λ
El requerimiento es ...
Crear un sitio para gestionar el arriendo de la mesa de ping-pongdel centro de alumnos de ing. informatica.
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 10/1
λ
Diagrama de casos de uso
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 11/1
λ
Diagrama de casos de uso
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 11/1
λ
Modelo relacional
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 12/1
λ
Modelo relacional
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 12/1
λ
El arbol de directorios del proyecto
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 13/1
λ
El arbol de directorios del proyecto
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 13/1
λ
Estructura general
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 14/1
λ
Estructura general
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 14/1
λ
Encuentre las 8 diferencias ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 15/1
λ
Encuentre las 8 diferencias ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 15/1
λ
Encuentre las 8 diferencias ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 16/1
λ
Encuentre las 8 diferencias ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 16/1
λ
Encuentre las 8 diferencias ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 17/1
λ
Encuentre las 8 diferencias ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 17/1
λ
Encuentre las 8 diferencias ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 18/1
λ
Encuentre las 8 diferencias ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 18/1
λ
Encuentre las 8 diferencias ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 19/1
λ
Encuentre las 8 diferencias ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 19/1
λ
El patron decorator ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 20/1
λ
El patron decorator ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 20/1
λ
El patron decorator ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 21/1
λ
El patron decorator ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 21/1
λ
El patron decorator ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 22/1
λ
El patron decorator ...
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 22/1
λ
Funcionamiento de la capa modelo
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 23/1
λ
Funcionamiento de la capa modelo
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 23/1
λ
Fin
Gracias por su atencion
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 24/1
λ
Licencia
Usted es libre de:
copiar, distribuir y comunicar publicamente la obra
hacer obras derivadas
Bajo las condiciones siguientes:
Reconocimiento. Debe reconocer los creditos de la obra de la man-era especificada por el autor o el licenciador (pero no de una man-era que sugiera que tiene su apoyo o apoyan el uso que hace de suobra).Compartir bajo la misma licencia. Si transforma o modifica estaobra para crear una obra derivada, solo puede distribuir la obra re-sultante bajo la misma licencia, una similar o una compatible. Masinfo: http://creativecommons.org/licenses/by-sa/2.0/cl/
Gustavo Lacoste - gustavo@lacosox.org - http://lacosox.org — Introduccion a Symfony 25/1
Recommended