Creación de aplicaciones móviles con PHP y Symfony2
Upcoming SlideShare
Loading in...5
×
 

Creación de aplicaciones móviles con PHP y Symfony2

on

  • 7,668 views

 

Statistics

Views

Total Views
7,668
Views on SlideShare
5,923
Embed Views
1,745

Actions

Likes
4
Downloads
156
Comments
0

8 Embeds 1,745

http://phpconference.es 909
http://www.symfony.es 810
http://www.sfexception.com 10
http://symfony.es 9
http://a0.twimg.com 3
http://translate.googleusercontent.com 2
https://twitter.com 1
http://www.php-talks.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Creación de aplicaciones móviles con PHP y Symfony2 Creación de aplicaciones móviles con PHP y Symfony2 Presentation Transcript

  • Aplicaciones Móviles Quién es Pablo Godel? Creación de aplicaiones móviles con PHP y Symfony2 Pablo Godel PHP Barcelona Conference 2011Friday, October 28, 2011
  • Quién es Pablo Godel?" • Argentino, viviendo en Miami, EE.UU. desde 1999 • Programador PHP, Symfony, entre otros • Fundador de la lista de PHP en español  http://news.php.net/php.general.es/3 )Julio 2000( • Pasé el control a php.net con más de 1000 subscriptos • Co-fundador de ServerGrove Networks ⁃ fundada en 2005  ⁃ servicios de hosting especializado en PHP, Symfony, Zend Framework, entre otrosFriday, October 28, 2011
  • Quién es Pablo Godel?"Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Por qué? ¿Por qué?Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Por qué? • Cada vez más personas tienen acceso a Internet en el télefono móvil • Los dispositivos son cada vez más potentes y versátiles • El acceso a Internet es más rápido y confiable • El público demanda servicios y aplicaciones en todo momentoFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Por qué? • No se pueden dar ventajas en el mercado ultra-competitivo • Tus competidores ya lo están haciendo o implementandoFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Por qué? Algunos números...Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Por qué? • 5.300 millones de usuarios a nivel mundial • 370 millones de teléfonos móviles vendidos en Q1 2011 a nivel mundial • + 850 millones de usuarios en China • 54 millones de usuarios en España )2010( • 300 mil aplicaciones móviles con 10.900 millones de instalacionesFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Por qué? Teléfonos celulares por Paises Fuente: http://www.nationmaster.com/graph/med_mob_pho-media-mobile-phonesFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Por qué? ¿Cómo llegamos hasta aquí?Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Por qué? Un poco de historia...Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia 1979 Primera red celular )1G - primera generación( comercial del mundo lanzada en JapónFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia 1983 Motorola DynaTAC El teléfono “móvil” Motorola DynaTAC - también conocido como LA BOTA - costaba US$ 3995 y pesaba 793 gramos!Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia 1997 WAP - Wireless Application Protocol Estandard común para conectar distintas redes y aplicaciones en dispositivos • Cliente WAP • Servidor envia WML )XML( <?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml" > <wml> <card id="main" title="First Card"> <p mode="wrap">This is a sample WML page.</p> </card> </wml>Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia WAP/WMLFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia WAP/WMLFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia WAP/WMLFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia WAP/WML Programador:Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia WAP/WML Usuario:Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia 2007...Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia 2007 iPhone • Revolución en el mercado de telefonía móvil • Cliente Web SafariFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia 2007 iPhone App StoreFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia 2008 Primer dispositivo AndroidFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia 2010 iPadFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia ¿Qué significa todo esto?Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia Generación móvil La PC no está muertaFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia Generación móvil Pero el consumo de información pasó a teléfonos y tabletasFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Historia Generación móvil Y esto es sólo el comienzo...Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony ¿Symfony?Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony ¿Qué es Symfony?Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony Definición por Fabien Potencier: ⁃ Symfony2 es un grupo de componentes independientes, reusables y cohesivos, para solucionar problemas comunes de desarrollo web. ⁃ Symfony2 es también un framework full- stack, gracias a estos componentes Fuente: http://fabien.potencier.org/Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony 21 componentes de alta calidadFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony Componentes: • DependencyInjection • EventDispatcher • HttpFoundation • DomCrawler • ClassLoader • CssSelector • HttpKernel • BrowserKit • Templating • Translation • Serializer • Validator • Security • Routing • Console • Process • Config • Finder • Locale • Yaml • Form Todos en GitHub: http://github.com/symfonyFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony Proyectos usando componentes de Symfony2: • Silex: BrowerKit, CssSelector, DomCrawler, EventDispatcher, HttpFoundation, HttpKernel, Routing, Form, Translation, Validator • Goutte: BrowserKit, DomCrawler, CssSelector, Process, ClassLoader, Finder • Behat: Console, DependencyInjection, EventDispatcher, Finder, Yaml, Config, Translation • Doctrine2: Console, Yaml Propel2: Console, ClassLoader, Yaml • PHPUnit: Yaml • FLOW3: Yaml • Midguard CMS: most of them in their next version? • phpBB 4: most of them? • Drupal 8*: ClassLoader, HttpFoundation, HttpKernel? Fuente: http://fabien.potencier.org/Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony ¿Conoces o usaste symfony 1.x?Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony Mejor olvídate...Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony Lo único en común entre symfony 1.x y Symfony2 es el nombre...Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony Bueno, la carpeta web también...Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony Características • Escrito completamente desde cero para PHP 5.3 o superior. • Basado en los estandares del protocolo HTTP • API sólido y estable. • Extensible mediante creación de bundles (en sf1 eran llamados plugins) • Configuración flexible con archivos Yaml, XML, anotaciones, y/o código PHP. • Toda la configuración es convertida a PHP y cacheada. • Creación y manejo de formularios • Muchos unit tests • Código auditado por compañia de seguridad profesional gracias a las donaciones de la comunidad Symfony.Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony Comunidad Symfony • 312 personas han contribuido a Symfony2 hasta la fecha • ~2500 pull requests en GitHub • 705 bundles en http://symfony2bundles.org • Canales IRC en Freenode: #symfony-es, #symfony y #symfony-dev • Listas de discusión: symfony-es, symfony y symfony-devs en Google GroupsFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony Características • Excelente integración con: • Doctrine2 ORM y ODM • Propel2 • Assetic - manejo de assets (css, js, imágenes, etc) • Twig - motor de plantillas • Swiftmailer - envío de emailsFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony ¿Por qué Symfony?Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Symfony • Gracias a la base sólida se pueden crear buenas APIs HTTP / Restful • Twig facilita la creación de plantillas para dispositivos móviles • Es posible re-utilizar mucho código para distintas aplicaciones o dispositivos gracias a las plantillas, los controladores y el ruteoFriday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Tipos 1.Aplicaciones nativas 2.Aplicaciones SMS 3.Aplicaciones web 4.Aplicaciones híbridas )mezcla de nativas & web(Friday, October 28, 2011
  • Aplicaciones Móviles - Quién es Pablo Godel? Tipos Aplicaciones NativasFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? nativas • iPhone - Objective-C • Android - Java • Windows Mobile - .NET • Frameworks multi-plataform ⁃ PhoneGap http://phonegap.com ⁃ rhomobile http://rhomobile.com ⁃ Appceledator http://appcelerator.com ⁃ Corona http://anscamobile.com/corona/Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? nativas PHP o Symfony no corren en estos dispositivos pero las aplicaciones nativas comúnmente necesitan conectarse a un servidor. Usos comunes: • envío de mensajes • carga de datos de una DB • autenticación/autorización • chatsFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? nativas Consideraciones: • Diseñar API )RESTful, HTTP, XML-RPC( temprano en el ciclo de desarrollo • Una API se puede utilizar para otro tipo de clientes )ej. Desktop como Adobe AIR( • Reutilizar controladores y aprovechar el _format para generar distintos formatos de contenido )XML, json, etc(Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Nativas Symfony2 Bundle para crear una API - FOSRestBundle https://github.com/FriendsOfSymfony/FOSRestBundleFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? nativas Notificaciones PUSH Un servidor envía mensajes a la red celular con destino teléfono/aplicación - El servidor puede estar desarrollado con Symfony Ejemplo en PHP: http://easyapns.com/Friday, October 28, 2011
  • Aplicaciones Móviles Quién es Pablo Godel? Aplicaciones SMSFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? SMS Symfony puede recibir y enviar mensajes de texto a través de un gateway Usos comunes: - Envío de alertas - Chats - Pagos electrónicos - Avisos publicitariosFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? SMSFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? SMS Recibo de SMS 1.El usuario envía un mensaje de texto a un "short code" )ej. 12334( 2.El mensaje se rutea a través del proveedor de telefonía 3.El mensaje llega al gateway registrado para procesar el short code 4.El gateway convierte el mensaje y lo envía por internet utilizando HTTP/HTTPS 5.Nuestro servidor recibe el "request" con la siguiente información: ⁃ número de télefono ⁃ operador / carrier ⁃ contenido del mensaje 6.Procesamos el mensaje 7.Si es necesario enviamos una respuestaFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? SMS Envío de SMS 1.Generamos el contenido del mensaje 2.Se envía el mensaje al gateway con la siguiente información ⁃ número de teléfono ⁃ operador / carrier )opcional( ⁃ contenido del mensaje 3.El gateway recibe el mensaje y responde si puede aceptarlo 4.Una vez que el mensaje es enviado, es posible recibir un acuse de recibo. Este aviso puede ser un “request” aparte.Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? SMS Proveedores de SMS gateway: • Twilio http://twilio.com )lanzanzando servicio internacional pronto( • Clickatell http://www.clickatell.com • SMSpubli http://www.smspubli.comFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? SMS/MMS MMS son mensajes multimedia con texto, imágenes, video y audio Usos comunes: - Procesamiento de fotos - Envío de código de barras 2DFriday, October 28, 2011
  • Aplicaciones Móviles Quién es Pablo Godel? Aplicaciones WebFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web Frameworks HTML / Javascript • iui http://code.google.com/p/iui/ )uno de los primeros( • JQuery Mobile http://jquerymobile.com/ )Open source( • JQTouch http://jqtouch.com/ )Open source( • DHTMLX Touch http://dhtmlx.com/touch/ )Open source( • The M Project http://www.the-m-project.org/ )Open source( • Sensa Touch http://www.sencha.com/products/touch/Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery MobileFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile Soporta: - IOS )iPhone/iPad( - Android - Blackberry - Windows Phone - palm webOS - symbianFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery MobileFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile - Características • Basado en jQuery • Liviano )12KB comprimido( • HTML5 • Accesible )funciona con lectores de páginas( • Eventos, plugins y themes • Patrocinado por Mozilla, Adobe, Palm, Nokia, Blackberry entre otros.Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile - Características • Manejo de páginas • Transiciones • Ventanas de dialogo • Enlances y botones • Barras de navegación • Encabezados / Pies de páginas • Formularios • ListasFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile - Manejo de páginas <body> <!-- Start of first page --> <div data-role="page" id="foo"> ! <div data-role="content">! ! ! <p>Im first in the source order so Im shown as the page. </p>!! ! ! <p>View internal page called <a href="#bar">bar</a></p>! ! </div><!-- /content --> </div><!-- /page --> </body>Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile - Manejo de páginas <body> <!-- Start of first page --> <div data-role="page" id="foo"> ! <div data-role="content">! ! ! <p>Im first in the source order so Im shown as the page.</p>! ! ! ! <p>View internal page called <a href="#bar">bar</a></p>! ! </div><!-- /content --> </div><!-- /page --> <!-- Start of second page --> <div data-role="page" id="bar"> ! <div data-role="content">! ! ! <p>Im first in the source order so Im shown as the page.</p>! ! ! ! <p><a href="#foo">Back to foo</a></p>! ! </div><!-- /content --> </div><!-- /page --> </body>Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile - Transiciones <a href="foo.html" data-rel="dialog" data-transition="pop">Open dialog</a> <a href="foo.html" data-rel="dialog" data-transition="slidedown">Open dialog</a> <a href="foo.html" data-rel="dialog" data-transition="flip">Open dialog</a> <a href="foo.html" data-rel="dialog" data-transition="fade">Open dialog</a>Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile - Ventanas de dialogoFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile - Barras de navegacion <div data-role="header" data-position="inline"> ! <a href="index.html" data-icon="delete">Cancel</a> ! <h1>Edit Contact</h1> ! <a href="index.html" data-icon="check">Save</a> </div>Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile - FormsFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile - FormsFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile - ListasFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile y SymfonyFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? WebFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? WebFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web PlantillasFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web <!DOCTYPE html> <html> layout_movil.html.twig <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>{% block title %}Jornadas de Symfony{% endblock %} | Desymfony.com</title> <link rel="stylesheet" href="http://code.jquery.com/mobile/1.0b1/jquery.mobile-1.0b1.min.css" /> <script src="http://code.jquery.com/jquery-1.6.1.min.js"></script> <script src="http://code.jquery.com/mobile/1.0b1/jquery.mobile-1.0b1.min.js"></script> </head> <body> <div data-role="page" id="{% block pageid %}" class="type-{% block pagetype interior %}"> {% block header %} {% endblock %} {% block contenido %} {% endblock %} {% block footer %} <div data-role="footer" class="ui-bar" data-theme="b"> <a href="{{ path(m_estatica, { pagina: copyright}) }}">&copy; {{ now | date(Y) }} - desymfony</a> <a href="{{ path(m_estatica, { pagina: privacidad}) }}"> Privacidad</a> <a href="{{ path(m_estatica, { pagina: condiciones}) }}"> Condiciones de uso</a> </div> {% endblock %} </div> </body> </html>Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web {% extends "DesymfonyBundle::layout_movil.html.twig" %} {% block pageid ponencia %} ponencia.mhtml.twig {% block pagetype interior %} {% block header %} {% include DesymfonyBundle:Movil:header.mhtml.twig with {titulo: ponencia.titulo} %} {% endblock %} {% block contenido %} <div data-role="content"> <div class="content-primary"> <h2>{{ ponencia.titulo }}</h2> <p>{{ ponencia.descripcion }}</p> <ul data-role="listview" data-inset="true"> <li><strong>Fecha</strong><p class="ui-li-aside">{{ ponencia.fecha | date("d M") }}</p></li> <li><strong>Hora</strong><p class="ui-li-aside">{{ ponencia.hora | date("H:i") }} - {{ ponencia.horaFinalizacion | date("H:i") }}</p></li> <li><strong>Idioma</strong><p class="ui-li-aside">{{ idiomas[ponencia.idioma] }}</p></li> <li><a href="{{ path(m_ponentes) }}"><strong>Ponente</strong><p class="ui-li-aside"> {{ ponencia.ponente }}</p></a></li> </ul> </div> </div> {% endblock %}Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web header.mhtml.twig <div data-role="header" data-theme="b"> <h1>{{titulo}}</h1> <a href="#home" data-icon="home" data-iconpos="notext" data- direction="reverse" class="ui-btn-right jqm-home" data- ajax="false">Home</a> </div><!-- /header -->Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web RutasFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile y Symfony / Rutas portada: pattern: / defaults: { _controller: DesymfonyBundle:Default:index } ponencias: pattern: /ponencias.{_format} defaults: { _controller: DesymfonyBundle:Ponencia:index, _format: html } requirements: _format: html|xml|ics ponencia: pattern: /ponencia/{slug} defaults: { _controller: DesymfonyBundle:Ponencia:ponencia } estatica: pattern: /sitio/{pagina} defaults: { _controller: DesymfonyBundle:Default:estatica } requirements: pagina: contacto|copyright|condiciones|privacidadFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile y Symfony / Rutas m_portada: pattern: /m defaults: { _controller: DesymfonyBundle:Default:index, _format: mhtml } m_ponencias: pattern: /m/ponencias.{_format} defaults: { _controller: DesymfonyBundle:Ponencia:index, _format: mhtml } requirements: _format: mhtml|html|xml|ics m_ponencia: pattern: /m/ponencia/{slug} defaults: { _controller: DesymfonyBundle:Ponencia:ponencia, _format: mhtml } m_ponentes: pattern: /m/ponentes defaults: { _controller: DesymfonyBundle:Ponente:index, _format: mhtml }Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile y Symfony / Rutas opción 2 m_portada: pattern: /m defaults: { _controller: DesymfonyBundle:Default:index, movil: true } m_ponencias: pattern: /m/ponencias.{_format} defaults: { _controller: DesymfonyBundle:Ponencia:index, movil: true } requirements: _format: html|xml|ics m_ponencia: pattern: /m/ponencia/{slug} defaults: { _controller: DesymfonyBundle:Ponencia:ponencia, movil: true } m_ponentes: pattern: /m/ponentes defaults: { _controller: DesymfonyBundle:Ponente:index, movil: true }Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile y Symfony / Rutas opción 3 m_portada: pattern: /m defaults: { _controller: DesymfonyBundle:Movil:index }Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web Controladores y accionesFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile y Symfony / Controlador & Acción public function indexAction() { $em = $this->get(doctrine)->getEntityManager(); $ponenciasDiaUno = $em->getRepository(DesymfonyBundle:Ponencia)- >findTodasDeFecha(2011-07-01); $ponenciasDiaDos = $em->getRepository(DesymfonyBundle:Ponencia)- >findTodasDeFecha(2011-07-02); $format = $this->get(request)->getRequestFormat(); return $this->render(DesymfonyBundle:Default:index..$format..twig, array( ponenciasDiaUno => $ponenciasDiaUno, ponenciasDiaDos => $ponenciasDiaDos, )); }Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web TestingFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web • Podemos utilizar los functional tests de Symfony2 ya que el contenido es HTML • Si utilizamos el modo AJAX para transiciones y carga dinámica, no podemos usar los functional tests • Alternativas: Selenium RC • Behat )BDD(Friday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? Web jQuery Mobile y Symfony DEMO ! Aplicación desymfony: • http://desymfony.qa.servergrove.com • http://desymfony.qa.servergrove.com/m Panel de Control: • https://control.servergrove.com/ • https://control.servergrove.com/m login: demo@servergrove.com password: Demo2010Friday, October 28, 2011
  • Aplicaciones Móviles Quién es Pablo Godel? Aplicaciones HíbridasFriday, October 28, 2011
  • Aplicaciones Aplicaciones Móviles Quién es Pablo Godel? híbridas Aplicaciones que combinan aspectos de aplicaciones nativas y web Framework PhoneGap - Desarrollo de aplicación con HTML y JavaScript - Integración con XCode - Compila en código nativo - Acceso a acelerómetro, cámara, geolocation, notificacionesFriday, October 28, 2011
  • Aplicaciones Móviles Quién es Pablo Godel? ¿Preguntas?Friday, October 28, 2011
  • Aplicaciones Móviles Quién es Pablo Godel? MUCHAS GRACIAS! Comentarios & sugerencias: http://joind.in/4330 Fuentes: https://github.com/desymfony/desymfony Slides: http://slideshare.net/pgodel Twitter: @pgodel IRC Freenode: pgodelFriday, October 28, 2011