<?xml version="1.0" encoding="UTF-8"?>
 <rdf:RDF xmlns="http://purl.org/rss/1.0/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://web.resource.org/cc/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://pinboard.in">
    <title>Pinboard (michaelfox)</title>
    <link>https://pinboard.in/u:michaelfox/public/</link>
    <description>recent bookmarks from michaelfox</description>
    <items>
      <rdf:Seq>	<rdf:li rdf:resource="http://www.horde.org/papers/kongress2002-design_patterns/12_observer.xml.html"/>
      </rdf:Seq>
    </items>
  </channel><item rdf:about="http://www.horde.org/papers/kongress2002-design_patterns/12_observer.xml.html">
    <title>Presentations</title>
    <dc:date>2010-12-07T01:32:38+00:00</dc:date>
    <link>http://www.horde.org/papers/kongress2002-design_patterns/12_observer.xml.html</link>
    <dc:creator>michaelfox</dc:creator><description><![CDATA[The Observer Pattern The observer pattern, also known as subject-observer and listener, is a more complicated but very prevalent and useful pattern. Anyone who has done event handling in Java knows this pattern, every kind of event listener is an observer to one subject or another - the keyboard, a window, a mouse, etc.  The pattern describes how to attach any number of observers to a subject, which can then act on events that occur involving the subject. For example, this pattern is available in the PEAR Log:: package, allowing you to monitor log data with an observer object and take action - such as sending an email page on any critical errors - on certain kinds of log messages.  Here's a simple usage of this implementation of the observer pattern:]]></description>
<dc:subject>framework inspiration patterns objects observer events observable bestpractices oop php</dc:subject>
<dc:identifier>https://pinboard.in/u:michaelfox/b:9013eb715d01/</dc:identifier>
<taxo:topics><rdf:Bag>	<rdf:li rdf:resource="https://pinboard.in/u:michaelfox/t:framework"/>
	<rdf:li rdf:resource="https://pinboard.in/u:michaelfox/t:inspiration"/>
	<rdf:li rdf:resource="https://pinboard.in/u:michaelfox/t:patterns"/>
	<rdf:li rdf:resource="https://pinboard.in/u:michaelfox/t:objects"/>
	<rdf:li rdf:resource="https://pinboard.in/u:michaelfox/t:observer"/>
	<rdf:li rdf:resource="https://pinboard.in/u:michaelfox/t:events"/>
	<rdf:li rdf:resource="https://pinboard.in/u:michaelfox/t:observable"/>
	<rdf:li rdf:resource="https://pinboard.in/u:michaelfox/t:bestpractices"/>
	<rdf:li rdf:resource="https://pinboard.in/u:michaelfox/t:oop"/>
	<rdf:li rdf:resource="https://pinboard.in/u:michaelfox/t:php"/>
</rdf:Bag></taxo:topics>
</item>
</rdf:RDF>