Myphp-busters: symfony framework (php|tek 09)

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    4 Favorites, 3 Groups & 1 Event

    Myphp-busters: symfony framework (php|tek 09) - Presentation Transcript

    1. myphp-busters: symfony framework php|tek uncon 22-05-2009
    2. Adam Savage
    3. Jamie Hyneman
    4. Stefan Koopmanschap
    5. About me • Professional Services Consultant at Ibuildings • Husband, father of 2, slave of 6 • Symfony advocate • Initiator of SymfonyCamp • Founder of symfony-framework.nl • Plugin author/maintainer
    6. The myths: symfony is... • ... hard to learn • ... extremely coupled • ... not really programming, just configuration • ... restrictive • ... badly performing • ... the ultimate tool
    7. cc-by 2.0 http://www.flickr.com/photos/shonk/418180402/ Symfony is hard to learn
    8. Steep Learning Curve • Full-stack • MVC • ORM • YAML
    9. Great documentation • The Definitive Guide to symfony • Practical Symfony • Propel Edition • Doctrine Edition • Various other languages
    10. Great documentation • Official books in digital form • Forms in Action • symfony and Doctrine • The Cookbook • API documentation • Tutorials & Screencasts
    11. Community • IRC: #symfony on freenode • Forum • Mailinglists • Wiki • Snippets • Blog posts • Various local sites
    12. Symfony is hard to learn • Steep learning curve • Great documentation (online and offline) • Friendly and supportive community
    13. Symfony is hard to learn The Verdict
    14. cc-by 2.0 http://www.flickr.com/photos/u-suke/138067687/ Symfony is extremely coupled
    15. Perhaps in 1.0 • symfony was the glue between components • ORM integrated in the core • It was full-stack or nothing
    16. by-nc-nd 3.0 http://www.symfony-project.org/blog/2008/06/23/the-symfony-1-1-architecture symfony platform
    17. by-nc-nd 3.0 http://www.symfony-project.org/blog/2008/06/23/the-symfony-1-1-architecture platform and framework
    18. Symfony is extremely coupled by-nc-nd 3.0 http://www.symfony-project.org/blog/2009/02/18/dailymotion-powered-by-symfony
    19. Symfony is extremely coupled • 1.0 had quite some coupling • 1.1 introduced decoupling of the core: symfony platform • it is now possible to use core symfony classes without symfony
    20. Symfony is extremely coupled The Verdict
    21. symfony is not really programming, just configuration
    22. Just configuration is no fun
    23. Programming should be fun • No boring repetitive tasks • No standard stuff you did 100 times before • Write cool stuff • Focus on the cool parts
    24. Yes, there is configuration • To minimize the boring tasks • To ensure you don’t repeat yourself • To enable you to concentrate on complex logic
    25. So what is configured? • database credentials • caching • access control (authorization and authentication) • application specific values • routing • admin generator
    26. So where do I touch code? • Your custom complex business logic • Application specific controller code • View displays • Custom administration tasks • Your own libraries
    27. symfony is not really programming, just configuration The Verdict
    28. by-nc-sa 2.0 http://www.flickr.com/photos/two-wrongs/205467442/ symfony is restrictive
    29. symfony is restrictive • Default directory structure • Default set of classes • Default set of libraries • ORM included
    30. Default directory structure • Easily change the most important directory locations: • document root • cache directory • log directory • You usually don’t need to do this!
    31. Default set of classes • Default set offers most common uses • Easy to use your own custom class using configuration
    32. Default set of libraries • Default libraries • lime (unit testing) • prototype / scriptaculous • Dozens of plugins • jquery, dojo, extjs, YUI • PHPUnit
    33. ORM included • Propel is default • Doctrine is distributed with symfony • There is no need for an ORM
    34. You can just disable both!
    35. Hell, disable the database • When you don’t use the database • Models approach web services
    36. symfony is restrictive The Verdict
    37. Symfony is badly performing
    38. Symfony doesn’t perform
    39. Symfony doesn’t perform
    40. Disclaimer: No benchmarks!
    41. by-sa 2.0 http://www.flickr.com/photos/mattieb/131215442/
    42. Symfony doesn’t perform • Slow • Hard on the server
    43. Symfony doesn’t perform • Overhead • just like any framework • tweak it the right way
    44. Symfony doesn’t perform • Select your caching strategy • Page caching • Function caching • Query caching • Supercache!
    45. Cache
    46. Cache
    47. Symfony doesn’t perform • Turn off what you don’t need • ORM • Plugins • Database • Logging • Helpers
    48. Symfony doesn’t perform • Don’t believe me! • Yahoo! Answers • Delicious.com • DailyMotion.com
    49. Symfony is badly performing The Verdict
    50. by-nc-nd 2.0 http://www.flickr.com/photos/mandolux/34418046/ symfony is the ultimate tool
    51. Symfony is the ultimate tool • full-stack framework • based on MVC • automation of common tasks • supports agile approach • MIT license • DRY • All the buzzwords
    52. Symfony is the ultimate tool • Learning curve is more steep • Has to fit your project • Has to fit your project team • There is no single ultimate tool
    53. symfony is the ultimate tool The Verdict
    54. Reference • http://www.symfony-project.org/doc/ • http://www.symfony-project.org/blog/2008/06/23/ the-symfony-1-1-architecture • http://www.symfony-project.org/blog/2009/02/18/ dailymotion-powered-by-symfony • http://www.symfony-framework.nl/
    55. Questions? • http://joind.in/438 • http://www.leftontheweb.com/ • http://www.twitter.com/skoop • http://www.ibuildings.com/ • http://www.slideshare.net/skoop

    + Stefan KoopmanschapStefan Koopmanschap, 5 months ago

    custom

    941 views, 4 favs, 0 embeds more stats

    The slides for my "Myphp-busters: symfony framework more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 941
      • 941 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 4
    • Downloads 0
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories