Your SlideShare is downloading. ×
0
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
PHP Con symfony
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

PHP Con symfony

2,329

Published on

Lo que realmente falto de la ponencia de symfony en las jornadas

Lo que realmente falto de la ponencia de symfony en las jornadas

Published in: Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,329
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
62
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Desarrollo de aplicaciones web con PHP y Framework Symfony<br />Ponente: <br />Ing Carlos A Salazare-mail: csalazart33@yahoo.es<br />
  • 2. QUE ES UN GEEK<br />Del inglés Geek, pronunciado "guik"<br />GEEK  FRIKI DE LA TECNOLOGIA<br />QUE ES UN FRIKI<br />Es el apodoque le otorgan a las personas que son apasionadaspor el mundo de la tecnología ó inclusoobsesionadas con ella. <br />Computación, informática, electrónica, programación, video juegos, anime, manga, cienciaficción, comics, cosplay entre otros<br />
  • 3. SOY UN GEEK?<br />Si Alguna de Estas Imágenes Es Familiar Seguro eres un GEEK<br />Y Tú ERES?<br />
  • 4. FRIKI DE PHP<br /><?php echo $Framework->symfony();?><br />FRIKI DE PHP <br /><?php echo $Framework->symfony();?><br />Ing. Carlos A Salazare-mail: csalazart33@yahoo.es<br />http://es.debugmodeon.com/usuario/csalazart/<br />
  • 5. La web AHORA<br />LA WEB 2.0<br /> El término Web 2.0(2004–presente) está comúnmente asociado con un fenómeno social, basado en la interacción que se logra a partir de diferentes aplicaciones en la web, que facilitan el compartir información, la interoperabilidad, el diseño centrado en el usuario o D.C.U. <br />Estoes:<br /><ul><li>RedesSociales (Facebook, twitter, myspace, RSS)
  • 6. CompartirArchivos(WIKI, Blogs, Videos, Fotos, skydrive, p2p)
  • 7. Web Interactiva (AJAX, CSS, Frameworks, MVC, JSON)
  • 8. Web de Relaciones (friend, Facebook, eDarling, amorenlinea, ligatela)
  • 9. Web del Comercio(pay per clicks, E-lerning, E-Commerce)</li></li></ul><li>A Donde VAMOS<br />LA WEB 2.0  3.0<br />Web 3.0 es un neologismoque se utilizaparadescribir la evolución del uso y la interacción en la red a través de diferentescaminos. Apareció el términoporprimeravéz en 2006 en un artículo de Jeffrey Zeldman.<br />Estoes:<br /><ul><li>Manejo de Bases de Conocimiento (inteligencia artificial)
  • 10. Multi-Plataformas (DiferentesDispositivos: celulares, PAD, Tables, PC.. Etc)
  • 11. Web Semántica “La Web de los Datos” (Agentesinteligentes, metadatos, lasmaquinas “entienden”)
  • 12. Web Geoespacial “Geoweb” (google earth, google maps, gps en capas)
  • 13. Web 3D(VRML, 3DXML, X3D, Mundo Virtual 3D)</li></li></ul><li>PAGINAS WEB<br />Todo esto es gracias a las Páginas WEB<br />PHP<br />ASP<br />Programación lado del Servidor<br />JSP<br />PERL<br />HTML<br />XML<br />Programación lado del Cliente<br />J. Script<br />CSS<br />
  • 14. PHP<br />
  • 15. ¿Qué NO es PHP?<br /> Pasta con Hipervínculos Programable<br /> (PHP)<br />
  • 16. Un Script en PHP<br /><body><br /><?php $lst_nombre=$_POST["nombre"];<br /> $lst_edad=$_POST["edad"]<br /> if (trim($lst_nombre) && trim($lst_edad)) { ?><br /><p>Hola<?php $lst_nombre; ?>.<br /><br />Tiene<?php $lst_edad; ?> años</p> <?php }?><br /><?php<br />if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE)<br />{ echo "<p>Estásusando Internet Explorer</p>" }<br />else<br />{ echo "<p>¡Eresbienvenido en estelugar!</p>" } ?><br />
  • 17. La respuesta en HTML<br />Hola<br />Su nombre es Elisa Calderón<br />Tiene 21 años<br />Está usando Internet Explorer<br />
  • 18. Spaguetti CODE<br /><body><br /><?php $lst_nombre=$_POST["nombre"];<br /> $lst_edad=$_POST["edad"]<br /> if (trim($lst_nombre) && trim($lst_edad)) { ?><br /><p>Hola<?php $lst_nombre; ?>.<br /><br />Tiene<?php $lst_edad; ?> años</p> <?php }?><br /><?php<br />if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE)<br />{ echo "<p>Estásusando Internet Explorer</p>" }<br />else<br />{ echo "<p>¡Eresbienvenido en estelugar!</p>" } ?><br />
  • 19. PROGRAMACION WEB<br />PHP<br />PHP es un acrónimo recursivo que significa PHP Hypertext Pre-processor. Fue creado originalmente por Rasmus Lerdorf en 1994. Significaba Personal Home Page Tools<br />PHP es un lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web dinámicas. Es usado principalmente en interpretación del lado del servidor (server-side scripting) pero también puede ser utilizado desde una interfaz de línea de comandos o en la creación de otros tipos de programas incluyendo aplicaciones con interfaz gráfica usando las bibliotecas Qt o GTK+. PHPGTK<br />
  • 20. PROGRAMACION WEB<br />PHP Versiones<br />PHP 5<br />El 13 de julio de 2004, fuelanzado PHP 5, utilizando el motor Zend Engine 2.0. La versiónmásreciente de PHP es la 5.3.6 (17 de Marzo de 2011), queincluyetodaslasventajasqueprovee el nuevoZend Engine 2 <br /><ul><li>Mejorsoportepara la ProgramaciónOrientada a Objetos, que en versionesanteriores era extremadamenterudimentario.
  • 21. Mejoras de rendimiento.
  • 22. Mejorsoportepara MySQL con extensióncompletamentereescrita.
  • 23. Mejorsoporte a XML ( XPath, DOM, etc. ).
  • 24. Soportenativopara SQLite.
  • 25. Soporteintegradopara SOAP.
  • 26. Iteradores de datos.
  • 27. Manejo de excepciones.
  • 28. Mejoras con la implementación con Oracle. </li></li></ul><li>PROGRAMACION WEB<br />PHP Versiones<br />PHP 6<br />ESTA PENDIENTE SU LANZAMIENTO, PREVISTO PARA ESTE AÑO<br />Las diferenciasqueencontraremosfrente a PHP 5.* son:<br /><ul><li>Soportará Unicode;
  • 29. Limpieza de funcionalidadesobsoletascomoregister_globals, safe_mode, etc;
  • 30. PECL y eliminación de soporteereg;
  • 31. Mejoras en orientación a objetos;
  • 32. Inclusión en el núcleo de xmlReader y xmlWriterasícomoFileinfo;
  • 33. Return porreferenciadevolverá un error;
  • 34. Se retira el soporte de lasbibliotecasFreeType1 y GD1;</li></li></ul><li>¿Qué necesitoparaprogramar en PHP?<br />
  • 35. ¿Qué necesitoparaprogramar?<br /> Sistema Operativo / Plataforma<br /><ul><li> Linux
  • 36. Windows
  • 37. Macintosh</li></li></ul><li>¿Qué necesito para programar?<br />Un ambiente de desarrollo<br />¿Recuerdas?<br />
  • 38. ¿Qué necesitoparaprogramar?<br />Servidor Web o servicio web<br /><ul><li> Apache
  • 39. IIS (Internet Information Services)
  • 40. Tomcat
  • 41. Script de servicio PHP (depende del SO)
  • 42. Servicio de Bases de Datos (si se necesita)</li></li></ul><li>Navegadores de Internet<br />Internet Explorer<br />7.0<br />8.0<br />Mozilla Firefox<br />3.6<br />4.0 <br />Apple Safari<br />4.0<br />Google Chrome<br />5.0<br />
  • 43. Peroinstalar el servidorpuedeser un problema ...<br />www.apachefriends.org/es/xampp.html<br />XAMPP<br />www.wampserver.com<br />¡SOLO INTÉNTALO EN CASA!<br />
  • 44. EntornosparaDesarrollo<br />PHP Donde Programar<br /><ul><li>Dreamweaver: comercial, de la casa Adobe
  • 45. Zend Studio: Comercial - (Zend).
  • 46. PHPEclipse: plugin de Eclipse
  • 47. NetBeans: libre, multiplataforma, utiliza Symfony, auto-completado de código, auto-identador, PHPDocumentor.
  • 48. Aptana Studio: GPL, existe una versión comercial. Debe instalarse el plugin para PHP. Está basado en Eclipse, pero posee características que lo hacen mas deseable que el Eclipse PDT; entre ellas: auto-completado de código, auto-identador.
  • 49. Komodo IDE: Komodo Edit, libre y gratuito. El IDE es licencia comercial - (Mozilla).
  • 50. Quanta: GPL y gratuito, para GNU/linux con QT.
  • 51. gEdit: Editor de texto por defecto en Gnome - (Linux).
  • 52. Kedit: Editor de Texto por defecto de KDE – (Linux) </li></li></ul><li>DebemosTener en Cuenta<br />Para Programar <br /><ul><li>Lenguaje PHP
  • 53. Manejador de Bases de Datos</li></ul>Para diseñar la salida, Vista o Interfaz <br /><ul><li>Lenguaje HTML
  • 54. Lenguaje JavaScript
  • 55. Lenguaje CSS (Cascade Style Sheet)</li></li></ul><li>HERRAMIENTAS Y DESARROLLOS<br />
  • 56. DESARROLLOS<br />Ejemplos de aplicaciones desarrolladas con PHP (poo, CMS, MVC, xmls)<br />* Magento* OsCommerce* PrestaShop* WordPress* Dokuwiki* Drupal* Mambo Open Source* Moodle<br />* phpMyAdmin* PHP-Nuke* phpPgAdmin* Smarty* Joomla* phpBB* UVG SCADA* PhpCollab* Facebook<br />
  • 57. HERRAMIENTAS<br />Librerias<br />* Adodb* FPDF * FEEDCreator* XMLLib* JSON* XAJAX * JQuery4PHP* PHP SWF* Doctrine / Propel (ORM) <br />* PHPDocumentor<br />* Smarty* Xtemplates* nuSoap* PEAR* Y Mas… <br />
  • 58. FRAMEWORKS<br />
  • 59. QUE ES UN FRAMEWORK<br />Un framework (Marco de Trabajo)<br /> Es una plataforma de trabajo, es decir, un conjunto de herramientas que permiten desarrollar sobre un modelo común. Es como programar siguiendo pautas para lograr un producto estándar y sobre todo, fácilmente modificable y mantenible.<br /> Con Arquitectura <br /> - Módelo<br /> - Vista<br /> - Controlador<br />RUBY ON RAILS <br />La punta del iceberg<br />
  • 60. FRAMEWORKS<br />Desarrollos en PHP / PHP5 y POO <br />Orientados a<br />DRY : Don’t Repeat Your Self<br />KISS: Keep It Simple, Stupid / Keep It Short and Simple <br />
  • 61.
  • 62. SYMFONY<br />DRY<br />KISS<br />
  • 63. SYMFONY<br />Symfony es un completo framework diseñado para optimizar el desarrollo de las aplicaciones web. Para empezar, separa la lógica de negocio, la lógica de servidor y la presentación de la aplicación web. Proporciona varias herramientas y clases encaminadas a reducir el tiempo de desarrollo de una aplicación web compleja. Además, automatiza las tareas más comunes, permitiendo al desarrollador dedicarse por completo a los aspectos específicos de cada aplicación. El resultado de todas estas ventajas es que no se debe reinventar la rueda cada vez que se crea una nueva aplicación web.<br />
  • 64. SYMFONY<br />Características<br /><ul><li>Realizado con PHP 5, Orientado a Objetos
  • 65. Fácil Instalación y Garantía de funcionalidad en Windows y *nix
  • 66. Independiente del Gestor de Bases de Datos (ORM: Doctrine/Propel)
  • 67. MVC
  • 68. Basado en la Premisa, “Convenir en vez de Configurar”
  • 69. Contienen Comentarios de PHPDocumentor, Fácil lectura, y manuales en español. www.Librosweb.es/symfony
  • 70. Extensible, incorpora plugins propios y de terceros</li></li></ul><li>M V C<br />
  • 71. ¿Porqué Symfony (paralas personas)?<br />Para el dueño del producto:<br />Fácil de mantener y soportar<br />Producto basado en buenas prácticas y patrones de diseño<br />Para el desarrollador(a) / consultor(a):<br />Desarrollos reusables<br />Fácil de integrar nuevos programadores al proyecto<br />
  • 72. Organización del Proyecto<br />
  • 73. Como funciona en SYMFONY<br />http://localhost/index.php/mimodulo/miAccion<br />Frontend<br />http://localhost/index.php/articulos/listar<br />http://localhost/index.php/comentario/añadir<br />
  • 74. Como funciona en SYMFONY<br />http://localhost/backend.php/mimodulo/miAccion<br />Backend<br />http://localhost/backend.php/articulo/crear<br />http://localhost/backend.php/rss/listarRecientes<br />
  • 75. Generador de administración (“Mantenimientos”)<br />
  • 76. Framework de formularios y validaciones<br />
  • 77. Herramientas de depuración<br />
  • 78. Herramientas de depuración<br />
  • 79. Plugins<br />
  • 80. SITIOS WEB CREADOS CON SYMFONY<br />www.symfony-project.com<br />http://trac.symfony-project.org/wiki/ApplicationsDevelopedWithSymfony<br />
  • 81. SITIOS WEB CREADOS CON SYMFONY<br />Closed Source<br />www.symfony-project.com: The symfony website itself is built with symfony<br />Article Gold: Popular Articles Directory built on Symfony 1.4 (by Xenyo Ltd.)<br />Security Monitoring: Our security monitoring appliances is build with symfony.<br />Refactory.org: A public, multi-language code snippet library that anyone can edit<br />Merchant Pilot CRM : A CRM for the credit card processing and sales agent industry.<br />sociallynotable.com: An Amazon.com affiliate website built with Symfony2 and Doctrine MongoDB ODM and lets you shop for products that are popular on Amazon.com ranked by what is being mentioned the most on Twitter!<br />The Source CookBook: A Cookbook to keep and show your source code snippets. The recipes can be embedded everywhere and are beautifully highlighted especifically for every language.<br />www.onlineradioz.com: Listen to your favorite online radio stations with playlist information and enjoy! (Build with symfony 1.2 and Doctrine)<br />Perq: A business application for employee leave time. Built on Symfony 1.2, Doctrine, and SwiftMailer?. Integrated with Paypal.<br />http://dpu.pmsipilot.com : free application to fully operate a (french) hospital emergency service - DPU estune solution complète, ergonomique et gratuite de gestion des dossiers patients entièrementdédiée aux services d’urgences.<br />Blidoo: A generalist classified ads site.<br />
  • 82. QUE SE NECESITA<br />
  • 83. SYMFONY<br />
  • 84. LO DIVERTIDO<br />DEMOSTRACIÓN<br />Aplicación CRUD<br />Create<br />Read<br />Update<br />Detele<br />En 10 Minutos?<br />
  • 85. Comienza a usar Symfony<br />Web oficial<br />www.symfony-project.org<br />Comunidad ¡EN ESPAÑOL!<br />www.symfony.es<br />Documentación ¡EN ESPAÑOL!<br />librosweb.es/symfony<br />www.symfony-project.org/jobeet/1_4/Doctrine/es/<br />Cheat sheets (Hojas resumen)<br />www.symfony.es/documentacion/chuletas/<br />
  • 86. “La inteligencia consiste no sólo en el conocimiento, sino también en la destreza de aplicar los conocimientos en la práctica”<br />Aristóteles.<br />
  • 87. FRIKI DE PHP<br /><?php echo $Framework->symfony();?><br />FRIKI DE PHP <br /><?php echo $Framework->symfony();?><br />!!!!GRACIAS!!!!<br />Ing. Carlos A Salazare-mail :csalazart33@yahoo.es<br />tw : @ElRuzo<br />Blog : http://es.debugmodeon.com/usuario/csalazart/<br />

×