Agile Tools for PHP

3,122 views

Published on

PHP is one of the most commonly used programming languages in the world. Learn about the tools that help PHP keep up with its competitors in the world of web development. Hear about the tools that can be used to help with build and test automation on your PHP project, as well as demonstrations of the Composer dependency manager and PHPUnit.

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

No Downloads
Views
Total views
3,122
On SlideShare
0
From Embeds
0
Number of Embeds
54
Actions
Shares
0
Downloads
12
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Agile Tools for PHP

  1. 1. + Agile Tools for PHP Philip Ting
  2. 2. + History of PHP  1994 Rasmus Lerdorf, CGI binaries in C, online visit tracker  1995 PHP released  1997 PHP 2  1998 Zeev Suraski and Andi Gutmans rewrite PHP into PHP 3, resembles PHP today  2000 PHP 4, Zend engine
  3. 3. + History of PHP  2004 PHP 5.0, Zend engine 2  2005 PHP 5.1, PDO database access  2006 PHP 5.2, JSON support  2009 PHP 5.3, namespace, late static bindings, closures  2012 PHP 5.4, traits, cli web server, array syntax
  4. 4. + Problems PHP Faced • Code Base • Naming inconsistencies (isset, is_null) • Lack of modern language paradigms • Changed for 5.3+ • Lack of solid development tools • Changed recently
  5. 5. + Agile Values  Development tools are meant to address adaptability and simplicity
  6. 6. + Web Frameworks  Typically MVC  Model  View  Controller  Simplicity and Adaptability
  7. 7. + Web Frameworks - Simplicity  CodeIgniter  Easy to plug in, simple to work with, large community  Kohana  Originally fork of CodeIgniter, also simple to work with  CakePHP  Similar to Rails, lots of code generation
  8. 8. + Web Frameworks - Adaptability  Zend Framework  Enterprise development  Symfony  Enterprise development  Other pieces  Silex microframework (like Sinatra)  CLI
  9. 9. + Test Frameworks  Unit Tests  PHPUnit, SimpleUnit  BDD  Behat, Codeception  Selenium integration  Cucumber integration
  10. 10. + Object Relational Mappers  Object Relational Mappers (ORM)  Used for generating models  Can be considered frameworks of their own  Meant to address both adaptability and simplicity  ActiveRecord  Doctrine, Propel  DataMapper  Doctrine 2
  11. 11. + Other Tools  Dependency Management  pecl, pear, Composer  Continuous Integration  Can use Jenkins  Xinc  Build tools  Phing  Similar to Ant
  12. 12. + Conclusion  PHP is a very viable language to use for your project  Google and Github are your friends
  13. 13. + Demonstration

×