Frameworks para Php Adwa

7,316 views

Published on

Material creado por Elad Rodríguez para ADWA sobre Frameworks para PHP

Published in: Education

Frameworks para Php Adwa

  1. 1. Frameworks  PHP  ¿por  qué  usarlos? Elad Rodríguez nitsnets | studios
  2. 2. Frameworks  PHP  ¿por  qué  usarlos? Indice -­‐  ¿Que  es  un  framework? -­‐  Ventajas  y  desventajas -­‐  Framerwoks  PHP -­‐  Symfony -­‐  CodeIgniter -­‐  Casos  de  éxito -­‐  Enlaces
  3. 3. Frameworks  PHP  ¿por  qué  usarlos? ¿Que  es  un  Framework? -­‐  Framework  es  un  conjunto  estandarizado  de  conceptos,   prácIcas  y  criterios  para  resolver  un  problema. -­‐  En  soLware  es  una  estructura  conceptual  y  tecnológica  de   soporte  definida.  Con  librerías,  componentes  y  clases  que  facilitan   un  desarrollo  ágil,  seguro  y  escalable. -­‐  Una  forma  de  organizarnos
  4. 4. Frameworks  PHP  ¿por  qué  usarlos? ¿Necesito  un  framework? -­‐  Como  en  todo,  hay  desarrolladores  pro-­‐frameworks  y   anti-­‐frameworks. -­‐  Necesitas  orden,  framework  o  no  acabarás   desarrollando  de  una  cierta  forma  y  lógica.  Estarás   haciendo  tu  propio  “framework”
  5. 5. Frameworks  PHP  ¿por  qué  usarlos? No  reinventemos  la  rueda.  “ TOPICAZO”
  6. 6. Frameworks  PHP  ¿por  qué  usarlos? Ventajas -­‐  Escalibilidad  y  Mantenimiento -­‐  Independencia  lógica  de  negocio  e  interfaz  gráfica MVC:  Modelo,  Vista,  Controlador.   -­‐  Desarrollo  más  rápido  y  mejor.
  7. 7. Frameworks  PHP  ¿por  qué  usarlos? Ventajas -­‐  Librerías  y  códigos  ya  realizados. Lo  ]pico  ya  lo  Ienes,  no  lo  repitas! -­‐  Extensa  documentación  y  muchos  incluso  en  Español. -­‐  Independencia  de  Base  de  datos. -­‐  Suelen  seguir  la  mayoría  de  las  mejores  prácIcas  y   patrones  de  diseño  web
  8. 8. Frameworks  PHP  ¿por  qué  usarlos? Ventajas -­‐  Puedes  encontrar  desarrolladores  ya  capacitados  en   ese  framework.   -­‐  Menos  código: menos  complejidad  =>  menos  bugs =>  más  producIvidad  =>  menos  Iempo =>  menos  costes  =>  más  beneficios
  9. 9. Frameworks  PHP  ¿por  qué  usarlos? Desventajas
  10. 10. Frameworks  PHP  ¿por  qué  usarlos? Desventajas -­‐  A  veces  me  limitan  porque  no  se  modificar  algo  del   núcleo  o  no  me  hace  lo  que  pienso  que  debería.  Si  lo   hubiese  programado  yo  entero  lo  tendría  todo  más   claro. -­‐  No  me  siento  realizado...  no  todo  es  mio  :-­‐S -­‐  Curva  de  aprendizaje  costosa  en  algunos  frameworks -­‐  Puede  implicar  trabajar  más  de  lo  necesario:   configuración  de  la  caché.  Obligado  a  mejor  resultado!    
  11. 11. Frameworks  PHP  ¿por  qué  usarlos? Al  final  te  fijas  en  lo  importante...
  12. 12. Frameworks  PHP  ¿por  qué  usarlos? ¡¡Ojo!! -­‐  Un  framework  es  una  metodología  con  herramientas   pero  NO  LO  HACE  TODO  SOLO.
  13. 13. Frameworks  PHP  ¿por  qué  usarlos? JusIficación  rápida  de  framework  MVC   -­‐  Trabajar  sin  framework.  “A  saco”  Todo  mezclado   diseño,  conexión  a  base  de  datos  y  lógica  de  negocio <html> <head> <title>ADWA</title> </head> <body> <table border="1"> <tr> <th>CONFERENCIA</th> <th>PONENTE</th> </tr> <?php $db = new PDO('mysql:host=localhost;dbname=adwa', 'root', 'adwa2010'); $result = $db->query('SELECT * FROM conferencias'); $libros = array(); while ($conferencia = $result->fetch()) { ?> <tr> <td><?php echo $conferencia['titulo']?></td> <td><?php echo $conferencia['ponente']?></td> </tr> <?php } ?> </table> </body></html>
  14. 14. Frameworks  PHP  ¿por  qué  usarlos? JusIficación  rápida  de  framework  MVC   -­‐  Trabajar  sin  framework.  “A  saco”  Todo  mezclado   diseño,  conexión  a  base  de  datos  y  lógica  de  negocio <html> <head> <title>ADWA</title> </head> Vista   <body> <table border="1"> <tr> <th>CONFERENCIA</th> <th>PONENTE</th> </tr> <?php $db = new PDO('mysql:host=localhost;dbname=adwa', 'root', 'adwa2010'); Modelo   $result = $db->query('SELECT * FROM conferencias'); $libros = array(); while ($conferencia = $result->fetch()) { ?> <tr> <td><?php echo $conferencia['titulo']?></td> <td><?php echo $conferencia['ponente']?></td> </tr> Vista   <?php } ?> </table> </body></html>
  15. 15. Frameworks  PHP  ¿por  qué  usarlos? -­‐  Esta  bien,  un  poco  de  orden.  Las  llamadas  a  base  de   datos  externas,  las  variables  de  conexión  de  base  de   datos  como  constantes  y  todo  el  código  al  principio <?php Modelo   $db = conectar(); $result = $db->query('SELECT * FROM conferencias'); $conferencias = array(); while ($conferencias = $result->fetch()) $conferencias[] = $conferencia; <?php foreach ($conferencias as $conferencia) { ?> <tr> <td><?php echo $conferencia['titulo']?></td> <td><?php echo $conferencia['ponente']?></td> </tr> <?php } ?> Vista   </table> </body></html>
  16. 16. Frameworks  PHP  ¿por  qué  usarlos? -­‐  Y  porque  no  separamos  completamente  para  que   diseñadores  HTML  y  desarrolladores  PHP  convivan   felices.  En  varios  ficheros  .php Ya  tenemos  el  MVC.
  17. 17. Frameworks  PHP  ¿por  qué  usarlos? Frameworks Frameworks  PHP Componentes  y  librerías hgp://framework.zend.com hgp://www.akelos.org hgp://cakephp.org hgp://www.yiiframework.com hgp://pear.php.net hgp://www.seagullproject.org hgp://www.fusebox.org hgp://ez.no/ezcomponents hgp://www.kumbiaphp.com hgp://www.fusebox.org hgp://www.symfony-­‐project.org hgp://www.codeigniter.com ...
  18. 18. Frameworks  PHP  ¿por  qué  usarlos? ¿Pero  cual  elijo?
  19. 19. Frameworks  PHP  ¿por  qué  usarlos? ¿Pero  cual  elijo? Bueno,  reflexionemos,  probemos  varios,  leemos  blogs   con  pros  y  contras,  sigamos  reflexionando  (fecha  de   entrega  del  proyecto  ha  pasado  ya),  descarguemos  la   ulIma  versión  que  ha  salido  nueva...  espera  espera  ha   salido  un  framework  que  aún  es  mejor...
  20. 20. Frameworks  PHP  ¿por  qué  usarlos? ¿Igual? ...  hay  que  tomar  una  decisión  ya
  21. 21. Frameworks  PHP  ¿por  qué  usarlos? ¿Elijo  por  I? librerías ó + externos... + (Symfony  ||  CodeIgniter) &&  ZendFramework  &&  pear &&  jquery  &&  doctrine
  22. 22. Frameworks  PHP  ¿por  qué  usarlos? Javascript:  “NO  TE  OLVIDES  DE  MIIIIIIIIIIII” Los  frameworks  PHP  son  frameworks  de  PHP  no  de   desarrollo  web,  con  lo  cual  lenguaje  cliente  no  lo  Iene   en  cuenta...
  23. 23. Frameworks  PHP  ¿por  qué  usarlos? Symfony -­‐  Fundador  y  jefe  de  proyecto:  Fabien  Potencier  (Francia) -­‐  En  2007  nación  Symfony  1.0  como  framework  de  desarrollo interno  para  la  empresa  de  Fabien:  Sensio  Labs. -­‐  Actualmente  las  úlImas  versiones  son  1.4  y  ya  esta  en desarrollo  la  versión  2.0.
  24. 24. Frameworks  PHP  ¿por  qué  usarlos? Symfony -­‐  Es  de  los  frameworks  más  uIlizados.  Eso  da  seguridad  ;-­‐) -­‐  Grandes  empresas  como  Yahoo  y  el  periódico  Público/Cine  han   apostado  por  ser  su  framework  de  trabajo. -­‐  Es  la  apuesta  europea  de  PHP  en  contraposición  del americano  y  más  anIguo  CakePHP -­‐  Nace  con  el  objeIvo  de  no  reinventar  la  rueda,  todo  lo  bien   hecho  lo  intentan  incorporar:  YAML,  Doctrine  ORM...
  25. 25. Frameworks  PHP  ¿por  qué  usarlos? hgp://www.delicious.com
  26. 26. Frameworks  PHP  ¿por  qué  usarlos? hgp://www.publico.es/cine
  27. 27. Frameworks  PHP  ¿por  qué  usarlos? Symfony:  CaracterísIcas -­‐  Gran  documentación  y  comunidad  tanto  en  habla  inglesa como  española  (entre  otras) Grandisimos  tutoriales  y  libros  como  24  días  con  Symfony: www.jobeet.org -­‐  Friendly  URL  :  RooIng -­‐  Helpers -­‐  Formularios  MVC -­‐  ORM:  Doctrine  y  Propel -­‐  Internacionalización  (I18N)  y  Localización  (L10N)
  28. 28. Frameworks  PHP  ¿por  qué  usarlos? Symfony:  CaracterísIcas -­‐  Sistema  buenísmo  de  CACHE:  slots,  componentes,  par7al   -­‐  Unit  TesIng -­‐  Debugger  developers -­‐  Línea  de  comandos -­‐  Scawolding.  Generadores  de  código  para  gestores  de   contenidos.  CRUD  (Create,  Read,  Update,  Delete)
  29. 29. Frameworks  PHP  ¿por  qué  usarlos? -­‐  apps  =>  aplicaciones  con  sus  modulos se  va  replicando  la  misma  estructura  de  carpetas.   -­‐  cache  =>  ficheros  de  cache -­‐  config  =>  generales -­‐  data  =>  sqls -­‐  lib  /  model  =>  ORM -­‐  logs  =>  ficheros  de  control -­‐  web  =>  CONTROLADOR  
  30. 30. Frameworks  PHP  ¿por  qué  usarlos? -­‐  apps  =>  aplicaciones  con  sus  modulos,  se  van   -­‐  cache  =>  ficheros  de  cache -­‐  config  =>  generales -­‐  data  =>  sqls -­‐  lib  /  model  =>  ORM -­‐  logs  =>  ficheros  de  control -­‐  web  =>  CONTROLADOR  
  31. 31. Frameworks  PHP  ¿por  qué  usarlos? Si  no  quieres  Symfony  siempre  puedes uIlizar  unas  partes...
  32. 32. Frameworks  PHP  ¿por  qué  usarlos? CodeIgniter -­‐  ¿Quieres  un  framework  pequeño  y  manejable? -­‐  ¿No  quieres  tener  que  configurar  servidores? -­‐  ¿No  quieres  usar  la  linea  de  comandos? -­‐  ¿No  quieres  un  PHP  restricIvo? -­‐  ¿No  quieres  instalar  PEAR? -­‐  ¿No  quieres  aprender  un  gestor  de  planIllas? -­‐  Conclusión:  ODIAS  SYMFONY!!!  ;-­‐)
  33. 33. Frameworks  PHP  ¿por  qué  usarlos? CodeIgniter -­‐  Proyecto  fundado  por  EllisLab  Inc. -­‐  También  buena  documentación  y  buena  comunidad  en  español. Inferior  a  la  de  Symfony. -­‐  Mantenimiento  más  sencillo. No  una  actualización  constante  y  abusiva. Core  pequeño  y  estable. -­‐  OPENSOURCE -­‐  Conclusión:  El  hermano  “pequeño”  de  Symfony
  34. 34. Frameworks  PHP  ¿por  qué  usarlos?
  35. 35. Frameworks  PHP  ¿por  qué  usarlos? Casos  de  éxito:  hgp://www.openart.com
  36. 36. Frameworks  PHP  ¿por  qué  usarlos? los  frameworks+IDEs  nos   PERO... acercan  a  un  proceso   industrial... aún  el  soLware   es  de  fabricación   artesanal...
  37. 37. Frameworks  PHP  ¿por  qué  usarlos? Enlaces Symfony  >  Enlaces http://www.symfony-project.org Web oficial del framework de PHP Symfony http://www.symfony.es Blog de Symfony en español http://www.librosweb.es/symfony/index.html Documentación y libros de Symfony en español http://delicious.com/ Ejemplo de desarrollo realizado en Symfony
  38. 38. Frameworks  PHP  ¿por  qué  usarlos? Enlaces CodeIgniter  >  Enlaces http://www.codeigniter.com Web oficial del framework de PHP CodeIgniter http://techtastico.com/post/manual-codeigniter-castellano/ Manual de CodeIgniter en Español http://net.tutsplus.com/?s=codeigniter Videotutoriales y tutoriales de CodeIgniter en Inglés
  39. 39. Frameworks  PHP  ¿por  qué  usarlos? Enlaces Proyectos  >  Enlaces http://www.openart.com/ Red Social de Arte http://www.revistauala.com/ Periódico y revista digital cultural de Alicante http://www.nosplay.com mmm
  40. 40. Frameworks  PHP  ¿por  qué  usarlos? <?php echo “MUCHAS GRACIAS!”; ?> Elad Rodríguez nitsnets | studios www.nitsnets.com www.lostiemposcambian.com

×