Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: _RaSH_ en 8 Septiembre 2013, 19:42 pm



Título: Patrones :: SplObserver
Publicado por: _RaSH_ en 8 Septiembre 2013, 19:42 pm
Código
  1. <?php
  2. /**
  3. * SplObserver Pattern
  4. * @author Rebolini Pablo <rebolini.pablo@gmail.com>
  5. *
  6. *
  7. * Objetivo:  Definir una relacion de uno a muchos entre objetos,
  8. *   de forma tal, que cuando un objeto cambia de estado
  9. *   se notifica y actualiza automaticamente todos los
  10. *   objetos observadores. Provee una forma flexible de
  11. *   comunicacion entre objetos.
  12. *
  13. *
  14. * Aplicacion: Uno o varios objetos necesitan ser notificados de
  15. * los cambios de otro objeto concreto.
  16. * Las notificaciones se realizan de forma dinámica
  17. * en tiempo de ejecución.
  18. * El objeto observable no necesita saber quien lo
  19. * observa exactamente, sino que es un observador,
  20. * por lo que se consigue un mejor desacople.
  21. * (Fuente de esta explicacion: http://es.davidhorat.com/publicaciones/articulos/patrones/observador/)
  22. *
  23. * El patron SplObserver lo podemos combinar con cualquier
  24. * metodo de persistencia de datos. Por ejemplo DAO
  25. *
  26. *
  27. *
  28. * El objetivo de este ejemplo es implementar una clase Memorandum encargada
  29. * de crear y notificar a los diferentes departamentos sobre un nuevo Memorandum
  30. * interno.
  31. * Se espera que cada departamento sea capaz de obtener la notificacion en tiempo
  32. * de ejecucion y generar un memorandum del siguiente formato:
  33. *
  34. * =================== MEMO ===================
  35. * DESDE DEPARTAMENTO DE VENTAS:
  36. *
  37. * Nuevo Memorandum urgente: Nueva metodologia de trabajo
  38. * Lorem ipsum dolor sit amet, consectetur adipiscing elit.
  39. *
  40. * Atte. Dpto CEO
  41. * 09/03/1969 15:33
  42. * ============================================
  43. *
  44. */
  45. ?>
  46.  

Sin mas: https://github.com/rebolini-pablo/PhpPatrones/tree/master/Spl%20Observer

Cualquier duda o critica sera bienvenida.

Saludos