PHP_Frameworks_Discussion

983 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
983
On SlideShare
0
From Embeds
0
Number of Embeds
28
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

PHP_Frameworks_Discussion

  1. 1. PHP Frameworks Discussion Leong Hean Hong ( @hongster ) #barcampmlk2 (CC) BY http://goo.gl/E6THH
  2. 2. Outline <ul><ul><li>What is an application framework? </li></ul></ul><ul><ul><li>var x = diff(framework, library); </li></ul></ul><ul><ul><li>Types of frameworks </li></ul></ul><ul><ul><li>Why should I use a framework? </li></ul></ul><ul><ul><li>Why I should not use a framework? </li></ul></ul><ul><ul><li>Factors to consider when choosing a framework </li></ul></ul>
  3. 3. What is an application framework? <ul><ul><li>Used by software developer to implement structure of an application for a specific development environment </li></ul></ul><ul><ul><li>Reduce overhead associated with common activities performed   </li></ul></ul>
  4. 4. x = diff(framework, library) <ul><ul><li>Library </li></ul></ul><ul><ul><ul><li>Collection of reusable code and data structures </li></ul></ul></ul><ul><ul><ul><li>For a specific purpose (e.g. graphic, networking) </li></ul></ul></ul><ul><ul><li>Framework </li></ul></ul><ul><ul><ul><li>Consist of multiple libraries </li></ul></ul></ul><ul><ul><ul><li>For a specific application type (e.g. game, web application) </li></ul></ul></ul><ul><ul><ul><li>Define basic application flow </li></ul></ul></ul><ul><ul><ul><li>Define some patterns of interaction among components </li></ul></ul></ul>
  5. 5. Types of frameworks <ul><ul><li>Generic web application </li></ul></ul><ul><ul><ul><li>Kohana , CodeIgniter , CakePHP , Zend , DooPHP buatan malaysia </li></ul></ul></ul><ul><ul><li>CMS </li></ul></ul><ul><ul><ul><li>Drupal ,  Joomla ,  Textpattern </li></ul></ul></ul><ul><ul><li>Blog </li></ul></ul><ul><ul><ul><li>  Wordpress </li></ul></ul></ul><ul><ul><li>There are also frameworks for building forum, social network, CRM, ... </li></ul></ul>
  6. 6. Why should I use a framework? <ul><ul><li>Save development effort </li></ul></ul><ul><ul><li>I am a newbie programmer </li></ul></ul><ul><ul><li>Ease of integrating components </li></ul></ul><ul><ul><li>Learn best practices, patterns </li></ul></ul>
  7. 7. Why I should not use a framework? <ul><ul><li>Ooi , I only want a About Us, FAQ, and Product page. </li></ul></ul><ul><ul><li>I want to know what I am doing, learn PHP. </li></ul></ul><ul><ul><li>My application has a very specific requirement, existing frameworks might not be suitable </li></ul></ul>
  8. 8. Factors to consider when choosing a framework <ul><ul><li>Learning curve </li></ul></ul><ul><ul><li>Community, documentation </li></ul></ul><ul><ul><li>Active development </li></ul></ul><ul><ul><li>How much work do I have to do? (Simplicity/flexibility v.s. Comprehensive) </li></ul></ul>
  9. 9. What do you think?
  10. 10. Thoughts on Convention, Configuration <ul><ul><li>Convention Over Configuration  makes &quot;magic&quot;. What if the &quot;magic&quot; stands in my way? </li></ul></ul><ul><ul><li>Is the configuration taking over my life? </li></ul></ul>

×