php con symfony

Post on 12-Jun-2015

2.366 Views

Category:

Education

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

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

TRANSCRIPT

Desarrollo de aplicaciones web con PHP y

Framework Symfony

Ponente:

Ing Carlos A Salazar e-mail: csalazart33@yahoo.es

QUE ES UN GEEKDel inglés Geek, pronunciado "guik"

GEEK FRIKI DE LA TECNOLOGIA

QUE ES UN FRIKI

Es el apodo que le otorgan a las personas que son apasionadas por el mundo de la tecnología ó incluso obsesionadas con ella.

Computación, informática, electrónica, programación, video juegos, anime, manga, ciencia ficción, comics, cosplay entre otros

SOY UN GEEK?

Y Tú ERES?Si Alguna de Estas Imágenes

Es Familiar Seguro eres un GEEK

FRIKI DE PHP <?php echo $Framework->symfony();?>

FRIKI DE PHP<?php echo $Framework->symfony();?>

Ing. Carlos A Salazare-mail: csalazart33@yahoo.eshttp://es.debugmodeon.com/usuario/csalazart/

LA WEB 2.0La web AHORA

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.

Esto es: Redes Sociales (Facebook, twitter, myspace, RSS) Compartir Archivos (WIKI, Blogs, Videos, Fotos, skydrive, p2p) Web Interactiva (AJAX, CSS, Frameworks, MVC, JSON) Web de Relaciones (friend, Facebook, eDarling, amorenlinea,

ligatela) Web del Comercio (pay per clicks, E-lerning, E-Commerce)

A Donde VAMOSLA WEB 2.0 3.0

Web 3.0 es un neologismo que se utiliza para describir la evolución del uso y la interacción en la red a través de diferentes caminos. Apareció el término por primera véz en 2006 en un artículo de Jeffrey Zeldman.

Esto es: Manejo de Bases de Conocimiento (inteligencia artificial) Multi-Plataformas (Diferentes Dispositivos: celulares, PAD,

Tables, PC.. Etc) Web Semántica “La Web de los Datos” (Agentes inteligentes,

metadatos, las maquinas “entienden”) Web Geoespacial “Geoweb” (google earth, google maps, gps

en capas) Web 3D (VRML, 3DXML, X3D, Mundo Virtual 3D)

PAGINAS WEBTodo esto es gracias a las Páginas WEB

PHP

ASPJSP

PERL

Programación lado del Servidor

Programación lado del Cliente

HTML

XMLJ. Script

CSS

PHP

¿Qué NO es PHP?

Pasta con Hipervínculos Programable

(PHP)

Un Script en PHP<body>

<?php $lst_nombre=$_POST["nombre"];

$lst_edad=$_POST["edad"]

if (trim($lst_nombre) && trim($lst_edad)) { ?>

<p>Hola <?php $lst_nombre; ?>.

<br />Tiene <?php $lst_edad; ?> años</p> <?php }?>

<?php

if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE)

{ echo "<p>Estás usando Internet Explorer</p>" }

else

{ echo "<p>¡Eres bienvenido en este lugar!</p>" } ?>

La respuesta en HTML

HolaSu nombre es Elisa CalderónTiene 21 añosEstá usando Internet Explorer

Spaguetti CODE<body>

<?php $lst_nombre=$_POST["nombre"];

$lst_edad=$_POST["edad"]

if (trim($lst_nombre) && trim($lst_edad)) { ?>

<p>Hola <?php $lst_nombre; ?>.

<br />Tiene <?php $lst_edad; ?> años</p> <?php }?>

<?php

if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE)

{ echo "<p>Estás usando Internet Explorer</p>" }

else

{ echo "<p>¡Eres bienvenido en este lugar!</p>" } ?>

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

PROGRAMACION WEB

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

PHP

PHP 5El 13 de julio de 2004, fue lanzado PHP 5, utilizando el motor Zend Engine 2.0. La versión más reciente de PHP es la 5.3.6 (17 de Marzo de 2011), que incluye todas las ventajas que provee el nuevo Zend Engine 2

PROGRAMACION WEBPHP Versiones

Mejor soporte para la Programación Orientada a Objetos, que en versiones anteriores era extremadamente rudimentario.

Mejoras de rendimiento. Mejor soporte para MySQL con extensión completamente reescrita. Mejor soporte a XML ( XPath, DOM, etc. ). Soporte nativo para SQLite. Soporte integrado para SOAP. Iteradores de datos. Manejo de excepciones. Mejoras con la implementación con Oracle.

PHP 6ESTA PENDIENTE SU LANZAMIENTO, PREVISTO PARA ESTE AÑO

PROGRAMACION WEBPHP Versiones

Las diferencias que encontraremos frente a PHP 5.* son: Soportará Unicode; Limpieza de funcionalidades obsoletas como register_globals, safe_mode, etc; PECL y eliminación de soporte ereg; Mejoras en orientación a objetos; Inclusión en el núcleo de xmlReader y xmlWriter así como Fileinfo; Return por referencia devolverá un error; Se retira el soporte de las bibliotecas FreeType1 y GD1;

¿Qué necesito para programar en PHP?

Sistema Operativo / Plataforma

Linux

Windows

Macintosh

¿Qué necesito para programar?

¿Qué necesito para programar?

Un ambiente de desarrollo

¿Recuerdas?

Servidor Web o servicio web

Apache

IIS (Internet Information Services)

Tomcat

Script de servicio PHP (depende del SO)

Servicio de Bases de Datos (si se necesita)

¿Qué necesito para programar?

Navegadores de InternetInternet Explorer

7.0

8.0

Mozilla Firefox

3.6

4.0

Apple Safari

4.0

Google Chrome

5.0

www.apachefriends.org/es/xampp.html

Pero instalar el servidor puede ser un problema ...

www.wampserver.com

¡SOLO INTÉNTALO EN CASA!

XAMPP

PHP Donde Programar

Dreamweaver: comercial, de la casa Adobe

Zend Studio: Comercial - (Zend).

PHPEclipse: plugin de Eclipse

NetBeans: libre, multiplataforma, utiliza Symfony, auto-completado de código, auto-identador, PHPDocumentor.

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.

Komodo IDE: Komodo Edit, libre y gratuito. El IDE es licencia comercial - (Mozilla).

Quanta: GPL y gratuito, para GNU/linux con QT.

gEdit: Editor de texto por defecto en Gnome - (Linux).

Kedit: Editor de Texto por defecto de KDE – (Linux)

Entornos para Desarrollo

Lenguaje PHP

Manejador de Bases de Datos

Debemos Tener en Cuenta

Para Programar

Lenguaje HTML

Lenguaje JavaScript

Lenguaje CSS (Cascade Style Sheet)

Para diseñar la salida, Vista o Interfaz

HERRAMIENTAS Y

DESARROLLOS

Ejemplos de aplicaciones desarrolladas con PHP (poo, CMS, MVC, xmls)

* Magento

* OsCommerce

* PrestaShop

* WordPress

* Dokuwiki

* Drupal

* Mambo Open Source

* Moodle

DESARROLLOS

* phpMyAdmin

* PHP-Nuke

* phpPgAdmin

* Smarty

* Joomla

* phpBB

* UVG SCADA

* PhpCollab

* Facebook

* Adodb

* FPDF

* FEEDCreator

* XMLLib

* JSON

* XAJAX

* JQuery4PHP

* PHP SWF

* Doctrine / Propel (ORM)

HERRAMIENTAS

* PHPDocumentor

* Smarty

* Xtemplates

* nuSoap

* PEAR

* Y Mas…

Librerias

FRAMEWORKS

Un framework (Marco de Trabajo)

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.

QUE ES UN FRAMEWORK

RUBY ON RAILS La punta del iceberg

Con Arquitectura - Módelo- Vista- Controlador

FRAMEWORKS

Desarrollos en PHP / PHP5 y POO

Orientados a

DRY : Don’t Repeat Your SelfKISS: Keep It Simple, Stupid / Keep It Short and Simple

SYMFONY

DRY KISS

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.

SYMFONY

Características

Realizado con PHP 5, Orientado a Objetos

Fácil Instalación y Garantía de funcionalidad en Windows y *nix

Independiente del Gestor de Bases de Datos (ORM: Doctrine/Propel)

MVC

Basado en la Premisa, “Convenir en vez de Configurar”

Contienen Comentarios de PHPDocumentor, Fácil lectura, y manuales en español. www.Librosweb.es/symfony

Extensible, incorpora plugins propios y de terceros

SYMFONY

M V C

¿Por qué Symfony (para las personas)?

Para el dueño del producto:

Fácil de mantener y soportar

Producto basado en buenas prácticas y patrones de diseño

Para el desarrollador(a) / consultor(a):

Desarrollos reusables

Fácil de integrar nuevos programadores al proyecto

Organización del Proyecto

Como funciona en SYMFONY

http://localhost/index.php/mimodulo/miAccion

Frontend

http://localhost/index.php/articulos/listar

http://localhost/index.php/comentario/añadir

Como funciona en SYMFONY

http://localhost/backend.php/mimodulo/miAccion

Backend

http://localhost/backend.php/articulo/crear

http://localhost/backend.php/rss/listarRecientes

Generador de administración (“Mantenimientos”)

Framework de formularios y validaciones

Herramientas de depuración

Herramientas de depuración

Plugins

SITIOS WEB CREADOS CON SYMFONY

http://trac.symfony-project.org/wiki/ApplicationsDevelopedWithSymfony

www.symfony-project.com

Closed Sourcewww.symfony-project.com: The symfony website itself is built with symfonyArticle Gold: Popular Articles Directory built on Symfony 1.4 (by Xenyo Ltd.)Security Monitoring: Our security monitoring appliances is build with symfony.Refactory.org: A public, multi-language code snippet library that anyone can editMerchant Pilot CRM : A CRM for the credit card processing and sales agent industry.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!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.www.onlineradioz.com: Listen to your favorite online radio stations with playlist information and enjoy! (Build with symfony 1.2 and Doctrine)Perq: A business application for employee leave time. Built on Symfony 1.2, Doctrine, and SwiftMailer?. Integrated with Paypal.http://dpu.pmsipilot.com : free application to fully operate a (french) hospital emergency service - DPU est une solution complète, ergonomique et gratuite de gestion des dossiers patients entièrement dédiée aux services d’urgences.Blidoo: A generalist classified ads site.

SITIOS WEB CREADOS CON SYMFONY

QUE SE

NECESITA

SYMFONY

DEMOSTRACIÓN

LO DIVERTIDO

CreateReadUpdateDetele

En 10 Minutos?

Aplicación CRUD

Web oficial

www.symfony-project.org

Comunidad ¡EN ESPAÑOL!

www.symfony.es

Documentación ¡EN ESPAÑOL!

librosweb.es/symfony

www.symfony-project.org/jobeet/1_4/Doctrine/es/

Cheat sheets (Hojas resumen)

www.symfony.es/documentacion/chuletas/

Comienza a usar Symfony

“La inteligencia consiste no sólo en el conocimiento, sino también en la destreza de aplicar los conocimientos en la práctica”

Aristóteles.

!!!!GRACIAS!!!!

FRIKI DE PHP <?php echo $Framework->symfony();?>

FRIKI DE PHP<?php echo $Framework->symfony();?>

Ing. Carlos A Salazare-mail : csalazart33@yahoo.estw : @ElRuzoBlog : http://es.debugmodeon.com/usuario/csalazart/

top related