SlideShare una empresa de Scribd logo
1 de 84
Descargar para leer sin conexión
Introduction to




                                              by Pablo Godel
                              Jan 11 2012 - South Florida PHP Users Group
Wednesday, January 11, 2012
Who Am I?
⁃   Born in Argentina, living in the US since 1999
⁃   PHP & Symfony developer
⁃   Founder of the PHP mailing list in spanish
⁃   Cofounder of ServerGrove Networks
     ⁃ Founded in 2005
     ⁃ provider of web hosting specialized in PHP, Symfony,
       ZendFramework among others
     ⁃ Very active open source supporter through code
       contributions and usergroups/conference sponsoring




Wednesday, January 11, 2012
Wednesday, January 11, 2012
History of Symfony




Wednesday, January 11, 2012
Releases



  - symfony 1.0:              January 2007
  - symfony 1.2:              November 2008
  - symfony 1.4:              November 2009

  - Symfony 2.0:              July 2011
  - Symfony 2.1:              Planned for early 2012




Wednesday, January 11, 2012
symfony 1.0
                                 released on January 2007



                          “symfony is a full-stack framework, a library
                              of cohesive classes written in PHP”




  - Several libraries put together (modified Mojavi, Propel, Prado
  i18n, etc)
  - Concepts borrowed from several languages and frameworks
     - Routing, CLI, functional tests,YAML, helpers
  - One of first PHP frameworks to include a Web Debug Toolbar,
  and an Admin Generator.

Wednesday, January 11, 2012
symfony 1.0
                                     Highlights


                     - ORM integration: Propel and Doctrine
                     - YAML cascading configuration
                     - Web Debug Toolbar
                     - Admin Generator
                     - Environments
                     - CLI
                     - Functional Tests
                     - Template Caching
                     - Internationalization
                     - Documentation
                     - Plugins
                     - Awesome Community

Wednesday, January 11, 2012
symfony 1.0
                              Highlights - Web Debug Toolbar




Wednesday, January 11, 2012
symfony 1.0
                              Highlights - Admin Generator




Wednesday, January 11, 2012
symfony 1.0
                              Highlights - Command Line Interface




Wednesday, January 11, 2012
symfony 1.0
                              Highlights - Documentation




                              - A Gentle Introduction to symfony
                              - Practical symfony (jobeet tutorial)
                              - The symfony Reference Book
                              - More with symfony
                              - The API documentation




                                  http://www.symfony-project.org/doc/1_4/
Wednesday, January 11, 2012
symfony 1.0
                              Highlights - Awesome Community

IRC #symfony & #symfony-devs

Google Groups
 symfony-users http://groups.google.com/group/symfony-users
 symfony-devs http://groups.google.com/group/symfony-devs
 symfony-es http://groups.google.com/group/symfony-es

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

Forums http://forum.symfony-project.org/

Lots of Blogs

Conferences around the world: US, France, Germany,
Spain
Wednesday, January 11, 2012
symfony 1.0
                              Highlights - Plugins




Wednesday, January 11, 2012
symfony 1 vs. Symfony 2




                                 Same philosophy

                               Rewritten from scratch




Wednesday, January 11, 2012
symfony 1 vs. Symfony 2




                              symfony 1 != Symfony2




Wednesday, January 11, 2012
symfony 1 vs. Symfony 2




                              If you used symfony 1.x

                               better forget about it.




Wednesday, January 11, 2012
Symfony 2



    “First, Symfony2 is a reusable set of standalone, decoupled,
      and cohesive PHP components that solve common web
                       development problems.
          Then, based on these components, Symfony2 is also a
                       full-stack web framework.”




                              http://fabien.potencier.org/article/49/what-is-symfony2
Wednesday, January 11, 2012
Symfony 2




                              21 High Quality
                               Components




Wednesday, January 11, 2012
Symfony 2 Components


                        •     DependencyInjection                    •   Serializer
                        •     EventDispatcher                        •   Validator
                        •     HttpFoundation                         •   Security
                        •     DomCrawler                             •   Routing
                        •     ClassLoader                            •   Console
                        •     CssSelector                            •   Process
                        •     HttpKernel                             •   Config
                        •     BrowserKit                             •   Finder
                        •     Templating                             •   Locale
                        •     Translation                            •   Yaml
                        •     Serializer                             •   Form


                                 All of them at GitHub: http://github.com/symfony
Wednesday, January 11, 2012
Symfony 2 Components


   Components Documentation
   http://symfony.com/doc/current/components/index.html



    Blog post series about creating a framework based on
    the Symfony2 Components
     http://fabien.potencier.org/




Wednesday, January 11, 2012
Symfony 2
                               Highlights


  • Rewritten from scratch for PHP 5.3
  • Based on the HTTP specification
  • Very stable and solid API (12 preview releases, 5 beta
    releases, 6 release candidates, 9 stable releases)
  • Extensible through the creation of Bundles (replacement for
    sf1 plugins)
  • Flexible configuration using YAML, XML, annotations or
    PHP
  • All configuration is compiled to PHP code and cached
  • Lots of unit tests
  • Source code audited by independent security firm thanks to
    donations of the Symfony Community

Wednesday, January 11, 2012
Symfony 2
                               Highlights



  • Extensible Configuration with Service Container/
    Dependency Injection
  • Complete redesign of Forms support
  • Validations
  • Extensible Security with Authentication/Authorization
  • Advanced and powerful templating through Twig
  • Routes configured with YAML, XML or Annotations
  • ESI Caching support out of the box
  • Assets management with Assetic
  • Translations
  • Environments


Wednesday, January 11, 2012
Symfony 2
                              Community



    •   357 developers contributed to Symfony2
    •   3000+ pull requests
    •   969 977 bundles at knpbundles.com
    •   Same very active IRC and mailing lists support channels
    •   Community Gamification through SensioLabs Connect
    •   Symfony2 Ecosystem




Wednesday, January 11, 2012
Symfony 2
                              Highlights - SensioLabs Connect




Wednesday, January 11, 2012
Symfony 2
                              Highlights - Bundles




Wednesday, January 11, 2012
Symfony 2
                              Getting Started




http://symfony.com/download




Wednesday, January 11, 2012
Symfony 2
                                 Getting Started



                   tar zxf Symfony_Standard_Vendors_2.0.9.tgz


                                        or



                      unzip Symfony_Standard_Vendors_2.0.9.zip


Wednesday, January 11, 2012
Symfony 2
                                    Getting Started




           Distributions

                     A Symfony distribution is made up of Symfony2
                          components, a selection of bundles,
                      a directory structure, a default configuration.




                                   http://symfony.com/distributions
Wednesday, January 11, 2012
Symfony 2
                               Getting Started

   Symfony Standard Distribution
      • Directory structure
      • Default configuration
      • Bundles
         ⁃ DoctrineBundle
         ⁃ JMSSecurityExtraBundle
         ⁃ SensioDistributionBundle
         ⁃ SensioFrameworkExtraBundle
         ⁃ SensioGeneratorBundle
         ⁃ AsseticBundle



                              http://symfony.com/distributions
Wednesday, January 11, 2012
Symfony 2
                              Getting Started




Wednesday, January 11, 2012
Symfony 2
                              Getting Started




Wednesday, January 11, 2012
Symfony 2
                              Directory Structure




Wednesday, January 11, 2012
Symfony 2
                              Directory Structure




Wednesday, January 11, 2012
Symfony 2
                              Directory Structure




Wednesday, January 11, 2012
Symfony 2
                              Directory Structure




Wednesday, January 11, 2012
Symfony 2
                              Configuration Files - app/config.yml




Wednesday, January 11, 2012
Symfony 2
                      Configuration Files - app/parameters.ini




Wednesday, January 11, 2012
Symfony 2
                     Configuration Files - app/config_dev.yml




Wednesday, January 11, 2012
Browser


                                   Request


                              Bootstrap (app.php)

                                  Controller

                                   Template

                                   Response
Wednesday, January 11, 2012
Bootstrap (app.php)




Wednesday, January 11, 2012
Symfony 2
                              Bootstrap File - web/app.php




Wednesday, January 11, 2012
Controllers




Wednesday, January 11, 2012
Controllers




Wednesday, January 11, 2012
Controllers




Wednesday, January 11, 2012
Controllers




Wednesday, January 11, 2012
Templates




Wednesday, January 11, 2012
Templating / Twig
  Comments:
          {# comments are not rendered #}

                              {# multi-line comments!
                                 {{ var }}
                              #}
 Output variables:
           {{ var }}
           {{ var | upper }}
           {{ var | raw }}
           {{ object.property }}
           {{ true ? ‘yes’ : ‘no’ }}
                                  http://twig.sensiolabs.org/
Wednesday, January 11, 2012
Templating / Twig

  Blocks:
       {% set var = ‘hello’ %}
       {% set foo = var ~ ’ and goodbye’ %}

                {% if foo is ‘bar’ %}
                   ...
                {% else %}
                   ...
                {% endif %}



                              http://twig.sensiolabs.org/
Wednesday, January 11, 2012
Templating / Twig

  Blocks:
       {% for key, val in list %}

                        {{ loop.index }}. {{ val }}

                {% else %}

                        No keys.

                {% endfor %}


                                http://twig.sensiolabs.org/
Wednesday, January 11, 2012
Templating / Twig
  Extends:

            {% extends "Bundle::layout.html.twig" %}

 Include:

            {% include “Bundle:Demo:template.html.twig” %}

   Render:

            {% render “Bundle:Demo:action” %}

                              http://twig.sensiolabs.org/
Wednesday, January 11, 2012
Awesome Twig Presentations

 Twig, The Flexible, Fast and Secure Template Language
 for PHP - Fabien Potencier
  http://www.slideshare.net/fabpot/twig-the-flexible-fast-and-securetemplate-
  language-for-php



  Being Dangerous with Twig - Ryan Weaver
 http://slideshare.net/weaverryan/being-dangerous-with-twig-symfony-
 live-paris



  Twig avanzado - Javier Eguiluz
   http://www.slideshare.net/javier.eguiluz/twig-avanzado-sf2vigo (Spanish)




Wednesday, January 11, 2012
Templating / Twig
                                 layout.html.twig




Wednesday, January 11, 2012
Templating / Twig
                                 index.html.twig




Wednesday, January 11, 2012
Templating / Twig
                                 index.html.twig




Wednesday, January 11, 2012
Bundles




Wednesday, January 11, 2012
Bundles




                              Everything in Symfony2 is
                                contained in Bundles




Wednesday, January 11, 2012
Bundles




                                 Even Symfony2 is
                              a collection of Bundles




Wednesday, January 11, 2012
Symfony 2
                              Directory Structure




Wednesday, January 11, 2012
Symfony 2
                   Bundles Registration - app/AppKernel.php




Wednesday, January 11, 2012
Bundles Showcase




Wednesday, January 11, 2012
Bundles Showcase




Wednesday, January 11, 2012
Bundles Showcase




Wednesday, January 11, 2012
Bundles Showcase




Wednesday, January 11, 2012
Bundles Showcase




Wednesday, January 11, 2012
Bundles Showcase




                     And many many more!




Wednesday, January 11, 2012
Forms




Wednesday, January 11, 2012
Forms
                              Definition




Wednesday, January 11, 2012
Forms
                              Presentation




Wednesday, January 11, 2012
Forms
                              Processing




Wednesday, January 11, 2012
Web Debug Toolbar
                                      &
                                   Profiler




Wednesday, January 11, 2012
Web Debug Toolbar / Profiler




Wednesday, January 11, 2012
CLI, Generator Commands
                                        Demo




Wednesday, January 11, 2012
Twig                     Silex



                               Ecosystem




                  ORM & ODM




                 Deployments
                               BDD Framework    Web Acceptance Testing

Wednesday, January 11, 2012
Who uses Symfony2?




Wednesday, January 11, 2012
Who uses Symfony2?




Wednesday, January 11, 2012
Who uses Symfony2?




Wednesday, January 11, 2012
Who uses Symfony2?




Wednesday, January 11, 2012
Who uses Symfony2?




Wednesday, January 11, 2012
Who uses Symfony2?




Wednesday, January 11, 2012
You?




Wednesday, January 11, 2012
You should :-)




Wednesday, January 11, 2012
Questions?




Wednesday, January 11, 2012
Wednesday, January 11, 2012
Thank you!


                              Slides: http://slideshare.net/pgodel

                                      Twitter: @pgodel
                                  IRC Freenode: pgodel
                              E-mail: pablo@servergrove.com



Wednesday, January 11, 2012

Más contenido relacionado

La actualidad más candente

Dependency management with Composer
Dependency management with ComposerDependency management with Composer
Dependency management with ComposerJason Grimes
 
PHP-MySQL Database Connectivity Using XAMPP Server
PHP-MySQL Database Connectivity Using XAMPP ServerPHP-MySQL Database Connectivity Using XAMPP Server
PHP-MySQL Database Connectivity Using XAMPP ServerRajiv Bhatia
 
Php through the eyes of a hoster: PHPNW10
Php through the eyes of a hoster: PHPNW10Php through the eyes of a hoster: PHPNW10
Php through the eyes of a hoster: PHPNW10Combell NV
 
Transcode star
Transcode starTranscode star
Transcode starunweb
 
Comparing web frameworks
Comparing web frameworksComparing web frameworks
Comparing web frameworksAditya Sengupta
 
Composer the right way - SunshinePHP
Composer the right way - SunshinePHPComposer the right way - SunshinePHP
Composer the right way - SunshinePHPRafael Dohms
 
Introduction to Groovy Monkey
Introduction to Groovy MonkeyIntroduction to Groovy Monkey
Introduction to Groovy Monkeyjervin
 
Writing php extensions in golang
Writing php extensions in golangWriting php extensions in golang
Writing php extensions in golangdo_aki
 
12 Composer #burningkeyboards
12 Composer #burningkeyboards12 Composer #burningkeyboards
12 Composer #burningkeyboardsDenis Ristic
 
Cenário atual do PHP e Introdução ao Laravel no Devinvale 2014
Cenário atual do PHP e Introdução ao Laravel no Devinvale 2014Cenário atual do PHP e Introdução ao Laravel no Devinvale 2014
Cenário atual do PHP e Introdução ao Laravel no Devinvale 2014Julio Bitencourt
 
Php framework at BarCampPP
Php framework at BarCampPPPhp framework at BarCampPP
Php framework at BarCampPPpsophy
 

La actualidad más candente (20)

Dependency management with Composer
Dependency management with ComposerDependency management with Composer
Dependency management with Composer
 
Advantages of Choosing PHP Web Development
Advantages of Choosing PHP Web DevelopmentAdvantages of Choosing PHP Web Development
Advantages of Choosing PHP Web Development
 
PHP-MySQL Database Connectivity Using XAMPP Server
PHP-MySQL Database Connectivity Using XAMPP ServerPHP-MySQL Database Connectivity Using XAMPP Server
PHP-MySQL Database Connectivity Using XAMPP Server
 
MySQL Presentation
MySQL PresentationMySQL Presentation
MySQL Presentation
 
Php through the eyes of a hoster: PHPNW10
Php through the eyes of a hoster: PHPNW10Php through the eyes of a hoster: PHPNW10
Php through the eyes of a hoster: PHPNW10
 
Transcode star
Transcode starTranscode star
Transcode star
 
симфони это не страшно
симфони   это не страшносимфони   это не страшно
симфони это не страшно
 
Php Ppt
Php PptPhp Ppt
Php Ppt
 
Comparing web frameworks
Comparing web frameworksComparing web frameworks
Comparing web frameworks
 
Composer Helpdesk
Composer HelpdeskComposer Helpdesk
Composer Helpdesk
 
Drupal symfony
Drupal symfonyDrupal symfony
Drupal symfony
 
Composer the right way - SunshinePHP
Composer the right way - SunshinePHPComposer the right way - SunshinePHP
Composer the right way - SunshinePHP
 
Introduction to Groovy Monkey
Introduction to Groovy MonkeyIntroduction to Groovy Monkey
Introduction to Groovy Monkey
 
Writing php extensions in golang
Writing php extensions in golangWriting php extensions in golang
Writing php extensions in golang
 
Composer
ComposerComposer
Composer
 
12 Composer #burningkeyboards
12 Composer #burningkeyboards12 Composer #burningkeyboards
12 Composer #burningkeyboards
 
Symfony vs CodeIgniter
Symfony vs CodeIgniterSymfony vs CodeIgniter
Symfony vs CodeIgniter
 
Cenário atual do PHP e Introdução ao Laravel no Devinvale 2014
Cenário atual do PHP e Introdução ao Laravel no Devinvale 2014Cenário atual do PHP e Introdução ao Laravel no Devinvale 2014
Cenário atual do PHP e Introdução ao Laravel no Devinvale 2014
 
Php framework at BarCampPP
Php framework at BarCampPPPhp framework at BarCampPP
Php framework at BarCampPP
 
Os Mcmahan
Os McmahanOs Mcmahan
Os Mcmahan
 

Destacado

Symfony tips and tricks
Symfony tips and tricksSymfony tips and tricks
Symfony tips and tricksJavier Eguiluz
 
Symfony2 Introduction Presentation
Symfony2 Introduction PresentationSymfony2 Introduction Presentation
Symfony2 Introduction PresentationNerd Tzanetopoulos
 
Google Map маркеры вместе с Symfony2
Google Map маркеры вместе с Symfony2Google Map маркеры вместе с Symfony2
Google Map маркеры вместе с Symfony2Aliaksandr Harbunou
 
Php Model-View-Controller Frameworks
Php Model-View-Controller FrameworksPhp Model-View-Controller Frameworks
Php Model-View-Controller FrameworksDavid Badura
 
Codeigniter, a MVC framework for beginner
Codeigniter, a MVC framework for beginnerCodeigniter, a MVC framework for beginner
Codeigniter, a MVC framework for beginneraminbd
 
Codeigniter Introduction
Codeigniter IntroductionCodeigniter Introduction
Codeigniter IntroductionAshfan Ahamed
 
Benefits of the CodeIgniter Framework
Benefits of the CodeIgniter FrameworkBenefits of the CodeIgniter Framework
Benefits of the CodeIgniter FrameworkToby Beresford
 
Introduction to MVC Web Framework with CodeIgniter
Introduction to MVC Web Framework with CodeIgniterIntroduction to MVC Web Framework with CodeIgniter
Introduction to MVC Web Framework with CodeIgniterPongsakorn U-chupala
 
20110907102119431
2011090710211943120110907102119431
20110907102119431Mark Chung
 
Beyond the Paycheck: Stanford GSB Lecture to Net Impact Conference
Beyond the Paycheck:  Stanford GSB Lecture to Net Impact ConferenceBeyond the Paycheck:  Stanford GSB Lecture to Net Impact Conference
Beyond the Paycheck: Stanford GSB Lecture to Net Impact ConferenceWayne Dunn
 
Government and economics 1-2
Government and economics 1-2Government and economics 1-2
Government and economics 1-2cyndalea
 
Proposal for Online Course Evaluations
Proposal for Online Course EvaluationsProposal for Online Course Evaluations
Proposal for Online Course Evaluationsigoteach
 
Raycom gfx redesign
Raycom gfx redesignRaycom gfx redesign
Raycom gfx redesignJosh Johnson
 

Destacado (20)

Symfony tips and tricks
Symfony tips and tricksSymfony tips and tricks
Symfony tips and tricks
 
Symfony2 Introduction Presentation
Symfony2 Introduction PresentationSymfony2 Introduction Presentation
Symfony2 Introduction Presentation
 
Google Map маркеры вместе с Symfony2
Google Map маркеры вместе с Symfony2Google Map маркеры вместе с Symfony2
Google Map маркеры вместе с Symfony2
 
Php Model-View-Controller Frameworks
Php Model-View-Controller FrameworksPhp Model-View-Controller Frameworks
Php Model-View-Controller Frameworks
 
Codeigniter, a MVC framework for beginner
Codeigniter, a MVC framework for beginnerCodeigniter, a MVC framework for beginner
Codeigniter, a MVC framework for beginner
 
Codeigniter Introduction
Codeigniter IntroductionCodeigniter Introduction
Codeigniter Introduction
 
Symfony 2
Symfony 2Symfony 2
Symfony 2
 
Symfony 3
Symfony 3Symfony 3
Symfony 3
 
30 Symfony Best Practices
30 Symfony Best Practices30 Symfony Best Practices
30 Symfony Best Practices
 
Benefits of the CodeIgniter Framework
Benefits of the CodeIgniter FrameworkBenefits of the CodeIgniter Framework
Benefits of the CodeIgniter Framework
 
Introduction to MVC Web Framework with CodeIgniter
Introduction to MVC Web Framework with CodeIgniterIntroduction to MVC Web Framework with CodeIgniter
Introduction to MVC Web Framework with CodeIgniter
 
Disk scheduling
Disk schedulingDisk scheduling
Disk scheduling
 
Usw update-tuesday
Usw update-tuesdayUsw update-tuesday
Usw update-tuesday
 
20110907102119431
2011090710211943120110907102119431
20110907102119431
 
Beyond the Paycheck: Stanford GSB Lecture to Net Impact Conference
Beyond the Paycheck:  Stanford GSB Lecture to Net Impact ConferenceBeyond the Paycheck:  Stanford GSB Lecture to Net Impact Conference
Beyond the Paycheck: Stanford GSB Lecture to Net Impact Conference
 
Government and economics 1-2
Government and economics 1-2Government and economics 1-2
Government and economics 1-2
 
Proposal for Online Course Evaluations
Proposal for Online Course EvaluationsProposal for Online Course Evaluations
Proposal for Online Course Evaluations
 
SHAHU MAHARAJ
SHAHU MAHARAJSHAHU MAHARAJ
SHAHU MAHARAJ
 
Raycom gfx redesign
Raycom gfx redesignRaycom gfx redesign
Raycom gfx redesign
 
Production log
Production logProduction log
Production log
 

Similar a Introduction to symfony2

Symony2 A Next Generation PHP Framework
Symony2 A Next Generation PHP FrameworkSymony2 A Next Generation PHP Framework
Symony2 A Next Generation PHP FrameworkRyan Weaver
 
An introduction to Symfony 2 for symfony 1 developers
An introduction to Symfony 2 for symfony 1 developersAn introduction to Symfony 2 for symfony 1 developers
An introduction to Symfony 2 for symfony 1 developersGiorgio Cefaro
 
Symfony Components in the wild
Symfony Components in the wildSymfony Components in the wild
Symfony Components in the wildPHPLondon
 
Symfony2 components to the rescue of your PHP projects
Symfony2 components to the rescue of your PHP projectsSymfony2 components to the rescue of your PHP projects
Symfony2 components to the rescue of your PHP projectsXavier Lacot
 
Integrating symfony and Zend Framework
Integrating symfony and Zend FrameworkIntegrating symfony and Zend Framework
Integrating symfony and Zend FrameworkStefan Koopmanschap
 
Integrating symfony and Zend Framework (PHPNW09)
Integrating symfony and Zend Framework (PHPNW09)Integrating symfony and Zend Framework (PHPNW09)
Integrating symfony and Zend Framework (PHPNW09)Stefan Koopmanschap
 
Symfony Components 2.0 on PHP 5.3
Symfony Components 2.0 on PHP 5.3Symfony Components 2.0 on PHP 5.3
Symfony Components 2.0 on PHP 5.3Fabien Potencier
 
Integrating symfony and Zend Framework (PHPBarcelona 2009)
Integrating symfony and Zend Framework (PHPBarcelona 2009)Integrating symfony and Zend Framework (PHPBarcelona 2009)
Integrating symfony and Zend Framework (PHPBarcelona 2009)Stefan Koopmanschap
 
Symfony2 San Francisco Meetup 2009
Symfony2 San Francisco Meetup 2009Symfony2 San Francisco Meetup 2009
Symfony2 San Francisco Meetup 2009Fabien Potencier
 
Hands-on with the Symfony2 Framework
Hands-on with the Symfony2 FrameworkHands-on with the Symfony2 Framework
Hands-on with the Symfony2 FrameworkRyan Weaver
 
Symfony Live 09 Symfony 2
Symfony Live 09 Symfony 2Symfony Live 09 Symfony 2
Symfony Live 09 Symfony 2narkoza
 
Welcome to the Symfony2 World - FOSDEM 2013
 Welcome to the Symfony2 World - FOSDEM 2013 Welcome to the Symfony2 World - FOSDEM 2013
Welcome to the Symfony2 World - FOSDEM 2013Lukas Smith
 
Symfony State Of The Union, March 2010
Symfony State Of The Union, March 2010Symfony State Of The Union, March 2010
Symfony State Of The Union, March 2010Damien Filiatrault
 
Composing Symfony Apps Using Symfony Flex
Composing Symfony Apps Using Symfony FlexComposing Symfony Apps Using Symfony Flex
Composing Symfony Apps Using Symfony FlexDenis - Florin Rendler
 
Symfony Components
Symfony ComponentsSymfony Components
Symfony Componentsguest0de7c2
 
Symfony Components
Symfony ComponentsSymfony Components
Symfony Componentsguest0de7c2
 
Pdx Se Intro To Se
Pdx Se Intro To SePdx Se Intro To Se
Pdx Se Intro To SeAn Doan
 

Similar a Introduction to symfony2 (20)

Symony2 A Next Generation PHP Framework
Symony2 A Next Generation PHP FrameworkSymony2 A Next Generation PHP Framework
Symony2 A Next Generation PHP Framework
 
An introduction to Symfony 2 for symfony 1 developers
An introduction to Symfony 2 for symfony 1 developersAn introduction to Symfony 2 for symfony 1 developers
An introduction to Symfony 2 for symfony 1 developers
 
Symfony Components in the wild
Symfony Components in the wildSymfony Components in the wild
Symfony Components in the wild
 
Symfony 2.0 on PHP 5.3
Symfony 2.0 on PHP 5.3Symfony 2.0 on PHP 5.3
Symfony 2.0 on PHP 5.3
 
Symfony2 components to the rescue of your PHP projects
Symfony2 components to the rescue of your PHP projectsSymfony2 components to the rescue of your PHP projects
Symfony2 components to the rescue of your PHP projects
 
Symfony
SymfonySymfony
Symfony
 
Integrating symfony and Zend Framework
Integrating symfony and Zend FrameworkIntegrating symfony and Zend Framework
Integrating symfony and Zend Framework
 
Integrating symfony and Zend Framework (PHPNW09)
Integrating symfony and Zend Framework (PHPNW09)Integrating symfony and Zend Framework (PHPNW09)
Integrating symfony and Zend Framework (PHPNW09)
 
Symfony Components 2.0 on PHP 5.3
Symfony Components 2.0 on PHP 5.3Symfony Components 2.0 on PHP 5.3
Symfony Components 2.0 on PHP 5.3
 
Integrating symfony and Zend Framework (PHPBarcelona 2009)
Integrating symfony and Zend Framework (PHPBarcelona 2009)Integrating symfony and Zend Framework (PHPBarcelona 2009)
Integrating symfony and Zend Framework (PHPBarcelona 2009)
 
Symfony2 San Francisco Meetup 2009
Symfony2 San Francisco Meetup 2009Symfony2 San Francisco Meetup 2009
Symfony2 San Francisco Meetup 2009
 
Hands-on with the Symfony2 Framework
Hands-on with the Symfony2 FrameworkHands-on with the Symfony2 Framework
Hands-on with the Symfony2 Framework
 
Symfony Live 09 Symfony 2
Symfony Live 09 Symfony 2Symfony Live 09 Symfony 2
Symfony Live 09 Symfony 2
 
Welcome to the Symfony2 World - FOSDEM 2013
 Welcome to the Symfony2 World - FOSDEM 2013 Welcome to the Symfony2 World - FOSDEM 2013
Welcome to the Symfony2 World - FOSDEM 2013
 
Symfony State Of The Union, March 2010
Symfony State Of The Union, March 2010Symfony State Of The Union, March 2010
Symfony State Of The Union, March 2010
 
Composing Symfony Apps Using Symfony Flex
Composing Symfony Apps Using Symfony FlexComposing Symfony Apps Using Symfony Flex
Composing Symfony Apps Using Symfony Flex
 
Symfony Components
Symfony ComponentsSymfony Components
Symfony Components
 
Symfony Components
Symfony ComponentsSymfony Components
Symfony Components
 
Symfony Components
Symfony ComponentsSymfony Components
Symfony Components
 
Pdx Se Intro To Se
Pdx Se Intro To SePdx Se Intro To Se
Pdx Se Intro To Se
 

Más de Pablo Godel

SymfonyCon Cluj 2017 - Symfony at OpenSky
SymfonyCon Cluj 2017 - Symfony at OpenSkySymfonyCon Cluj 2017 - Symfony at OpenSky
SymfonyCon Cluj 2017 - Symfony at OpenSkyPablo Godel
 
Symfony Live San Francisco 2017 - Symfony @ OpenSky
Symfony Live San Francisco 2017 - Symfony @ OpenSkySymfony Live San Francisco 2017 - Symfony @ OpenSky
Symfony Live San Francisco 2017 - Symfony @ OpenSkyPablo Godel
 
DeSymfony 2017 - Symfony en OpenSky
DeSymfony 2017 - Symfony en OpenSkyDeSymfony 2017 - Symfony en OpenSky
DeSymfony 2017 - Symfony en OpenSkyPablo Godel
 
Deploying Symfony | symfony.cat
Deploying Symfony | symfony.catDeploying Symfony | symfony.cat
Deploying Symfony | symfony.catPablo Godel
 
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony AppsSymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony AppsPablo Godel
 
La Caja de Herramientas del Desarrollador Moderno PHPConferenceAR
La Caja de Herramientas del Desarrollador Moderno PHPConferenceARLa Caja de Herramientas del Desarrollador Moderno PHPConferenceAR
La Caja de Herramientas del Desarrollador Moderno PHPConferenceARPablo Godel
 
Symfony Live NYC 2014 - Rock Solid Deployment of Symfony Apps
Symfony Live NYC 2014 -  Rock Solid Deployment of Symfony AppsSymfony Live NYC 2014 -  Rock Solid Deployment of Symfony Apps
Symfony Live NYC 2014 - Rock Solid Deployment of Symfony AppsPablo Godel
 
The Modern Developer Toolbox
The Modern Developer ToolboxThe Modern Developer Toolbox
The Modern Developer ToolboxPablo Godel
 
PHP Conference Argentina 2013 - Independizate de tu departamento IT - Habilid...
PHP Conference Argentina 2013 - Independizate de tu departamento IT - Habilid...PHP Conference Argentina 2013 - Independizate de tu departamento IT - Habilid...
PHP Conference Argentina 2013 - Independizate de tu departamento IT - Habilid...Pablo Godel
 
PHP Conference Argentina 2013 - Deployment de aplicaciones PHP a prueba de balas
PHP Conference Argentina 2013 - Deployment de aplicaciones PHP a prueba de balasPHP Conference Argentina 2013 - Deployment de aplicaciones PHP a prueba de balas
PHP Conference Argentina 2013 - Deployment de aplicaciones PHP a prueba de balasPablo Godel
 
php[architect] Summit Series DevOps 2013 - Rock solid deployment of PHP apps
php[architect] Summit Series DevOps 2013 - Rock solid deployment of PHP appsphp[architect] Summit Series DevOps 2013 - Rock solid deployment of PHP apps
php[architect] Summit Series DevOps 2013 - Rock solid deployment of PHP appsPablo Godel
 
Lone Star PHP 2013 - Sysadmin Skills for PHP Developers
Lone Star PHP 2013 - Sysadmin Skills for PHP DevelopersLone Star PHP 2013 - Sysadmin Skills for PHP Developers
Lone Star PHP 2013 - Sysadmin Skills for PHP DevelopersPablo Godel
 
Lone StarPHP 2013 - Building Web Apps from a New Angle
Lone StarPHP 2013 - Building Web Apps from a New AngleLone StarPHP 2013 - Building Web Apps from a New Angle
Lone StarPHP 2013 - Building Web Apps from a New AnglePablo Godel
 
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...Pablo Godel
 
Creating Mobile Apps With PHP & Symfony2
Creating Mobile Apps With PHP & Symfony2Creating Mobile Apps With PHP & Symfony2
Creating Mobile Apps With PHP & Symfony2Pablo Godel
 
Tek13 - Creating Mobile Apps with PHP and Symfony
Tek13 - Creating Mobile Apps with PHP and SymfonyTek13 - Creating Mobile Apps with PHP and Symfony
Tek13 - Creating Mobile Apps with PHP and SymfonyPablo Godel
 
Tek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJSTek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJSPablo Godel
 
Soflophp 2013 - SysAdmin skills for PHP developers
Soflophp 2013 - SysAdmin skills for PHP developersSoflophp 2013 - SysAdmin skills for PHP developers
Soflophp 2013 - SysAdmin skills for PHP developersPablo Godel
 
Symfony2 and MongoDB - MidwestPHP 2013
Symfony2 and MongoDB - MidwestPHP 2013   Symfony2 and MongoDB - MidwestPHP 2013
Symfony2 and MongoDB - MidwestPHP 2013 Pablo Godel
 
Rock Solid Deployment of Web Applications
Rock Solid Deployment of Web ApplicationsRock Solid Deployment of Web Applications
Rock Solid Deployment of Web ApplicationsPablo Godel
 

Más de Pablo Godel (20)

SymfonyCon Cluj 2017 - Symfony at OpenSky
SymfonyCon Cluj 2017 - Symfony at OpenSkySymfonyCon Cluj 2017 - Symfony at OpenSky
SymfonyCon Cluj 2017 - Symfony at OpenSky
 
Symfony Live San Francisco 2017 - Symfony @ OpenSky
Symfony Live San Francisco 2017 - Symfony @ OpenSkySymfony Live San Francisco 2017 - Symfony @ OpenSky
Symfony Live San Francisco 2017 - Symfony @ OpenSky
 
DeSymfony 2017 - Symfony en OpenSky
DeSymfony 2017 - Symfony en OpenSkyDeSymfony 2017 - Symfony en OpenSky
DeSymfony 2017 - Symfony en OpenSky
 
Deploying Symfony | symfony.cat
Deploying Symfony | symfony.catDeploying Symfony | symfony.cat
Deploying Symfony | symfony.cat
 
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony AppsSymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
 
La Caja de Herramientas del Desarrollador Moderno PHPConferenceAR
La Caja de Herramientas del Desarrollador Moderno PHPConferenceARLa Caja de Herramientas del Desarrollador Moderno PHPConferenceAR
La Caja de Herramientas del Desarrollador Moderno PHPConferenceAR
 
Symfony Live NYC 2014 - Rock Solid Deployment of Symfony Apps
Symfony Live NYC 2014 -  Rock Solid Deployment of Symfony AppsSymfony Live NYC 2014 -  Rock Solid Deployment of Symfony Apps
Symfony Live NYC 2014 - Rock Solid Deployment of Symfony Apps
 
The Modern Developer Toolbox
The Modern Developer ToolboxThe Modern Developer Toolbox
The Modern Developer Toolbox
 
PHP Conference Argentina 2013 - Independizate de tu departamento IT - Habilid...
PHP Conference Argentina 2013 - Independizate de tu departamento IT - Habilid...PHP Conference Argentina 2013 - Independizate de tu departamento IT - Habilid...
PHP Conference Argentina 2013 - Independizate de tu departamento IT - Habilid...
 
PHP Conference Argentina 2013 - Deployment de aplicaciones PHP a prueba de balas
PHP Conference Argentina 2013 - Deployment de aplicaciones PHP a prueba de balasPHP Conference Argentina 2013 - Deployment de aplicaciones PHP a prueba de balas
PHP Conference Argentina 2013 - Deployment de aplicaciones PHP a prueba de balas
 
php[architect] Summit Series DevOps 2013 - Rock solid deployment of PHP apps
php[architect] Summit Series DevOps 2013 - Rock solid deployment of PHP appsphp[architect] Summit Series DevOps 2013 - Rock solid deployment of PHP apps
php[architect] Summit Series DevOps 2013 - Rock solid deployment of PHP apps
 
Lone Star PHP 2013 - Sysadmin Skills for PHP Developers
Lone Star PHP 2013 - Sysadmin Skills for PHP DevelopersLone Star PHP 2013 - Sysadmin Skills for PHP Developers
Lone Star PHP 2013 - Sysadmin Skills for PHP Developers
 
Lone StarPHP 2013 - Building Web Apps from a New Angle
Lone StarPHP 2013 - Building Web Apps from a New AngleLone StarPHP 2013 - Building Web Apps from a New Angle
Lone StarPHP 2013 - Building Web Apps from a New Angle
 
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
 
Creating Mobile Apps With PHP & Symfony2
Creating Mobile Apps With PHP & Symfony2Creating Mobile Apps With PHP & Symfony2
Creating Mobile Apps With PHP & Symfony2
 
Tek13 - Creating Mobile Apps with PHP and Symfony
Tek13 - Creating Mobile Apps with PHP and SymfonyTek13 - Creating Mobile Apps with PHP and Symfony
Tek13 - Creating Mobile Apps with PHP and Symfony
 
Tek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJSTek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJS
 
Soflophp 2013 - SysAdmin skills for PHP developers
Soflophp 2013 - SysAdmin skills for PHP developersSoflophp 2013 - SysAdmin skills for PHP developers
Soflophp 2013 - SysAdmin skills for PHP developers
 
Symfony2 and MongoDB - MidwestPHP 2013
Symfony2 and MongoDB - MidwestPHP 2013   Symfony2 and MongoDB - MidwestPHP 2013
Symfony2 and MongoDB - MidwestPHP 2013
 
Rock Solid Deployment of Web Applications
Rock Solid Deployment of Web ApplicationsRock Solid Deployment of Web Applications
Rock Solid Deployment of Web Applications
 

Último

Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Jeffrey Haguewood
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...amber724300
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...itnewsafrica
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 

Último (20)

Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 

Introduction to symfony2

  • 1. Introduction to by Pablo Godel Jan 11 2012 - South Florida PHP Users Group Wednesday, January 11, 2012
  • 2. Who Am I? ⁃ Born in Argentina, living in the US since 1999 ⁃ PHP & Symfony developer ⁃ Founder of the PHP mailing list in spanish ⁃ Cofounder of ServerGrove Networks ⁃ Founded in 2005 ⁃ provider of web hosting specialized in PHP, Symfony, ZendFramework among others ⁃ Very active open source supporter through code contributions and usergroups/conference sponsoring Wednesday, January 11, 2012
  • 4. History of Symfony Wednesday, January 11, 2012
  • 5. Releases - symfony 1.0: January 2007 - symfony 1.2: November 2008 - symfony 1.4: November 2009 - Symfony 2.0: July 2011 - Symfony 2.1: Planned for early 2012 Wednesday, January 11, 2012
  • 6. symfony 1.0 released on January 2007 “symfony is a full-stack framework, a library of cohesive classes written in PHP” - Several libraries put together (modified Mojavi, Propel, Prado i18n, etc) - Concepts borrowed from several languages and frameworks - Routing, CLI, functional tests,YAML, helpers - One of first PHP frameworks to include a Web Debug Toolbar, and an Admin Generator. Wednesday, January 11, 2012
  • 7. symfony 1.0 Highlights - ORM integration: Propel and Doctrine - YAML cascading configuration - Web Debug Toolbar - Admin Generator - Environments - CLI - Functional Tests - Template Caching - Internationalization - Documentation - Plugins - Awesome Community Wednesday, January 11, 2012
  • 8. symfony 1.0 Highlights - Web Debug Toolbar Wednesday, January 11, 2012
  • 9. symfony 1.0 Highlights - Admin Generator Wednesday, January 11, 2012
  • 10. symfony 1.0 Highlights - Command Line Interface Wednesday, January 11, 2012
  • 11. symfony 1.0 Highlights - Documentation - A Gentle Introduction to symfony - Practical symfony (jobeet tutorial) - The symfony Reference Book - More with symfony - The API documentation http://www.symfony-project.org/doc/1_4/ Wednesday, January 11, 2012
  • 12. symfony 1.0 Highlights - Awesome Community IRC #symfony & #symfony-devs Google Groups symfony-users http://groups.google.com/group/symfony-users symfony-devs http://groups.google.com/group/symfony-devs symfony-es http://groups.google.com/group/symfony-es Wiki http://trac.symfony-project.org/wiki/ Forums http://forum.symfony-project.org/ Lots of Blogs Conferences around the world: US, France, Germany, Spain Wednesday, January 11, 2012
  • 13. symfony 1.0 Highlights - Plugins Wednesday, January 11, 2012
  • 14. symfony 1 vs. Symfony 2 Same philosophy Rewritten from scratch Wednesday, January 11, 2012
  • 15. symfony 1 vs. Symfony 2 symfony 1 != Symfony2 Wednesday, January 11, 2012
  • 16. symfony 1 vs. Symfony 2 If you used symfony 1.x better forget about it. Wednesday, January 11, 2012
  • 17. Symfony 2 “First, Symfony2 is a reusable set of standalone, decoupled, and cohesive PHP components that solve common web development problems. Then, based on these components, Symfony2 is also a full-stack web framework.” http://fabien.potencier.org/article/49/what-is-symfony2 Wednesday, January 11, 2012
  • 18. Symfony 2 21 High Quality Components Wednesday, January 11, 2012
  • 19. Symfony 2 Components • DependencyInjection • Serializer • EventDispatcher • Validator • HttpFoundation • Security • DomCrawler • Routing • ClassLoader • Console • CssSelector • Process • HttpKernel • Config • BrowserKit • Finder • Templating • Locale • Translation • Yaml • Serializer • Form All of them at GitHub: http://github.com/symfony Wednesday, January 11, 2012
  • 20. Symfony 2 Components Components Documentation http://symfony.com/doc/current/components/index.html Blog post series about creating a framework based on the Symfony2 Components http://fabien.potencier.org/ Wednesday, January 11, 2012
  • 21. Symfony 2 Highlights • Rewritten from scratch for PHP 5.3 • Based on the HTTP specification • Very stable and solid API (12 preview releases, 5 beta releases, 6 release candidates, 9 stable releases) • Extensible through the creation of Bundles (replacement for sf1 plugins) • Flexible configuration using YAML, XML, annotations or PHP • All configuration is compiled to PHP code and cached • Lots of unit tests • Source code audited by independent security firm thanks to donations of the Symfony Community Wednesday, January 11, 2012
  • 22. Symfony 2 Highlights • Extensible Configuration with Service Container/ Dependency Injection • Complete redesign of Forms support • Validations • Extensible Security with Authentication/Authorization • Advanced and powerful templating through Twig • Routes configured with YAML, XML or Annotations • ESI Caching support out of the box • Assets management with Assetic • Translations • Environments Wednesday, January 11, 2012
  • 23. Symfony 2 Community • 357 developers contributed to Symfony2 • 3000+ pull requests • 969 977 bundles at knpbundles.com • Same very active IRC and mailing lists support channels • Community Gamification through SensioLabs Connect • Symfony2 Ecosystem Wednesday, January 11, 2012
  • 24. Symfony 2 Highlights - SensioLabs Connect Wednesday, January 11, 2012
  • 25. Symfony 2 Highlights - Bundles Wednesday, January 11, 2012
  • 26. Symfony 2 Getting Started http://symfony.com/download Wednesday, January 11, 2012
  • 27. Symfony 2 Getting Started tar zxf Symfony_Standard_Vendors_2.0.9.tgz or unzip Symfony_Standard_Vendors_2.0.9.zip Wednesday, January 11, 2012
  • 28. Symfony 2 Getting Started Distributions A Symfony distribution is made up of Symfony2 components, a selection of bundles, a directory structure, a default configuration. http://symfony.com/distributions Wednesday, January 11, 2012
  • 29. Symfony 2 Getting Started Symfony Standard Distribution • Directory structure • Default configuration • Bundles ⁃ DoctrineBundle ⁃ JMSSecurityExtraBundle ⁃ SensioDistributionBundle ⁃ SensioFrameworkExtraBundle ⁃ SensioGeneratorBundle ⁃ AsseticBundle http://symfony.com/distributions Wednesday, January 11, 2012
  • 30. Symfony 2 Getting Started Wednesday, January 11, 2012
  • 31. Symfony 2 Getting Started Wednesday, January 11, 2012
  • 32. Symfony 2 Directory Structure Wednesday, January 11, 2012
  • 33. Symfony 2 Directory Structure Wednesday, January 11, 2012
  • 34. Symfony 2 Directory Structure Wednesday, January 11, 2012
  • 35. Symfony 2 Directory Structure Wednesday, January 11, 2012
  • 36. Symfony 2 Configuration Files - app/config.yml Wednesday, January 11, 2012
  • 37. Symfony 2 Configuration Files - app/parameters.ini Wednesday, January 11, 2012
  • 38. Symfony 2 Configuration Files - app/config_dev.yml Wednesday, January 11, 2012
  • 39. Browser Request Bootstrap (app.php) Controller Template Response Wednesday, January 11, 2012
  • 41. Symfony 2 Bootstrap File - web/app.php Wednesday, January 11, 2012
  • 47. Templating / Twig Comments: {# comments are not rendered #} {# multi-line comments! {{ var }} #} Output variables: {{ var }} {{ var | upper }} {{ var | raw }} {{ object.property }} {{ true ? ‘yes’ : ‘no’ }} http://twig.sensiolabs.org/ Wednesday, January 11, 2012
  • 48. Templating / Twig Blocks: {% set var = ‘hello’ %} {% set foo = var ~ ’ and goodbye’ %} {% if foo is ‘bar’ %} ... {% else %} ... {% endif %} http://twig.sensiolabs.org/ Wednesday, January 11, 2012
  • 49. Templating / Twig Blocks: {% for key, val in list %} {{ loop.index }}. {{ val }} {% else %} No keys. {% endfor %} http://twig.sensiolabs.org/ Wednesday, January 11, 2012
  • 50. Templating / Twig Extends: {% extends "Bundle::layout.html.twig" %} Include: {% include “Bundle:Demo:template.html.twig” %} Render: {% render “Bundle:Demo:action” %} http://twig.sensiolabs.org/ Wednesday, January 11, 2012
  • 51. Awesome Twig Presentations Twig, The Flexible, Fast and Secure Template Language for PHP - Fabien Potencier http://www.slideshare.net/fabpot/twig-the-flexible-fast-and-securetemplate- language-for-php Being Dangerous with Twig - Ryan Weaver http://slideshare.net/weaverryan/being-dangerous-with-twig-symfony- live-paris Twig avanzado - Javier Eguiluz http://www.slideshare.net/javier.eguiluz/twig-avanzado-sf2vigo (Spanish) Wednesday, January 11, 2012
  • 52. Templating / Twig layout.html.twig Wednesday, January 11, 2012
  • 53. Templating / Twig index.html.twig Wednesday, January 11, 2012
  • 54. Templating / Twig index.html.twig Wednesday, January 11, 2012
  • 56. Bundles Everything in Symfony2 is contained in Bundles Wednesday, January 11, 2012
  • 57. Bundles Even Symfony2 is a collection of Bundles Wednesday, January 11, 2012
  • 58. Symfony 2 Directory Structure Wednesday, January 11, 2012
  • 59. Symfony 2 Bundles Registration - app/AppKernel.php Wednesday, January 11, 2012
  • 65. Bundles Showcase And many many more! Wednesday, January 11, 2012
  • 67. Forms Definition Wednesday, January 11, 2012
  • 68. Forms Presentation Wednesday, January 11, 2012
  • 69. Forms Processing Wednesday, January 11, 2012
  • 70. Web Debug Toolbar & Profiler Wednesday, January 11, 2012
  • 71. Web Debug Toolbar / Profiler Wednesday, January 11, 2012
  • 72. CLI, Generator Commands Demo Wednesday, January 11, 2012
  • 73. Twig Silex Ecosystem ORM & ODM Deployments BDD Framework Web Acceptance Testing Wednesday, January 11, 2012
  • 74. Who uses Symfony2? Wednesday, January 11, 2012
  • 75. Who uses Symfony2? Wednesday, January 11, 2012
  • 76. Who uses Symfony2? Wednesday, January 11, 2012
  • 77. Who uses Symfony2? Wednesday, January 11, 2012
  • 78. Who uses Symfony2? Wednesday, January 11, 2012
  • 79. Who uses Symfony2? Wednesday, January 11, 2012
  • 81. You should :-) Wednesday, January 11, 2012
  • 84. Thank you! Slides: http://slideshare.net/pgodel Twitter: @pgodel IRC Freenode: pgodel E-mail: pablo@servergrove.com Wednesday, January 11, 2012