<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Kommentare zu: Das Singleton Design Pattern mit PHP 4</title>
	<atom:link href="http://www.phpblogger.net/2007/04/09/das-singleton-design-pattern-mit-php-4/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.phpblogger.net/2007/04/09/das-singleton-design-pattern-mit-php-4/</link>
	<description>Ein PHP Blog mit aktuellen PHP Informationen und Tricks für Entwickler.</description>
	<pubDate>Sat, 11 Feb 2012 08:13:35 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.5</generator>
		<item>
		<title>Von: timi</title>
		<link>http://www.phpblogger.net/2007/04/09/das-singleton-design-pattern-mit-php-4/#comment-1408</link>
		<dc:creator>timi</dc:creator>
		<pubDate>Sun, 30 Nov 2008 18:56:40 +0000</pubDate>
		<guid isPermaLink="false">http://www.phpblogger.net/backup/2007/04/09/das-singleton-design-pattern-mit-php-4/#comment-1408</guid>
		<description>@Simon: Auch alte Projekte wollen weiterentwickelt werden. Bei gro&#223;en Projekten ist einfach nicht das Budget da, jedes Jahr die Plattform zu wechseln - da &#252;berspringt man schon mal eine Version und wechselt erst bei der n&#228;chsten Technologiestufe - PHP 6.

&#220;brigens kann man auch in PHP 4 objektorientiert entwickeln, wenn man Disziplin hat - der Parser wertet Fehler nur nicht so stark.</description>
		<content:encoded><![CDATA[<p>@Simon: Auch alte Projekte wollen weiterentwickelt werden. Bei gro&#223;en Projekten ist einfach nicht das Budget da, jedes Jahr die Plattform zu wechseln - da &#252;berspringt man schon mal eine Version und wechselt erst bei der n&#228;chsten Technologiestufe - PHP 6.</p>
<p>&#220;brigens kann man auch in PHP 4 objektorientiert entwickeln, wenn man Disziplin hat - der Parser wertet Fehler nur nicht so stark.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Simon</title>
		<link>http://www.phpblogger.net/2007/04/09/das-singleton-design-pattern-mit-php-4/#comment-1407</link>
		<dc:creator>Simon</dc:creator>
		<pubDate>Sun, 30 Nov 2008 18:53:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.phpblogger.net/backup/2007/04/09/das-singleton-design-pattern-mit-php-4/#comment-1407</guid>
		<description>Naja, also wer jetzt noch PHP4 verwendet, ist sowieso selbst schuld....

PHP4 und OOP ist wie Bier ohne Alkohol :P
Da fehlt einfach was!</description>
		<content:encoded><![CDATA[<p>Naja, also wer jetzt noch PHP4 verwendet, ist sowieso selbst schuld&#8230;.</p>
<p>PHP4 und OOP ist wie Bier ohne Alkohol :P<br />
Da fehlt einfach was!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: timi</title>
		<link>http://www.phpblogger.net/2007/04/09/das-singleton-design-pattern-mit-php-4/#comment-904</link>
		<dc:creator>timi</dc:creator>
		<pubDate>Thu, 24 Apr 2008 11:39:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.phpblogger.net/backup/2007/04/09/das-singleton-design-pattern-mit-php-4/#comment-904</guid>
		<description>;)</description>
		<content:encoded><![CDATA[<p>;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Mauz</title>
		<link>http://www.phpblogger.net/2007/04/09/das-singleton-design-pattern-mit-php-4/#comment-902</link>
		<dc:creator>Mauz</dc:creator>
		<pubDate>Wed, 23 Apr 2008 16:49:40 +0000</pubDate>
		<guid isPermaLink="false">http://www.phpblogger.net/backup/2007/04/09/das-singleton-design-pattern-mit-php-4/#comment-902</guid>
		<description>haha..Lord Fairlane mault da was wegen php5 vor, obwohl es um php4 geht. Mal wieder voll das Thema verfehlt.</description>
		<content:encoded><![CDATA[<p>haha..Lord Fairlane mault da was wegen php5 vor, obwohl es um php4 geht. Mal wieder voll das Thema verfehlt.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: timi</title>
		<link>http://www.phpblogger.net/2007/04/09/das-singleton-design-pattern-mit-php-4/#comment-164</link>
		<dc:creator>timi</dc:creator>
		<pubDate>Tue, 03 Jul 2007 06:49:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.phpblogger.net/backup/2007/04/09/das-singleton-design-pattern-mit-php-4/#comment-164</guid>
		<description>Danke f&#252;r die korrekte und super ausf&#252;hrliche Erg&#228;nzung!</description>
		<content:encoded><![CDATA[<p>Danke f&#252;r die korrekte und super ausf&#252;hrliche Erg&#228;nzung!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Ford Fairlane</title>
		<link>http://www.phpblogger.net/2007/04/09/das-singleton-design-pattern-mit-php-4/#comment-163</link>
		<dc:creator>Ford Fairlane</dc:creator>
		<pubDate>Mon, 02 Jul 2007 23:24:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.phpblogger.net/backup/2007/04/09/das-singleton-design-pattern-mit-php-4/#comment-163</guid>
		<description>PHP5 verwendet heutzutage immer Referenzen, daher ist das kfm. &#38; &#252;berfl&#252;ssig. Das ist aber kein echtes Problem. Ein Problem ist hingegen, da&#223; der gezeigte Code nicht verhindert, da&#223; ein Entwickler versehentlich oder gar absichtlich mittels new ein zweites Objekt erzeugt oder das bestehende mit clone kopiert. Dies mu&#223; unter allen Umst&#228;nden verhindert werden -- das ist ja der Sinn dieses Patterns. 

Das Singleton-Pattern wird nicht nur aus Performancegr&#252;nden verwendet, sondern auch um zuzusichern, da&#223; nur eine einzige Instanz dieser Klasse existiert. Das ist beispielsweise sinnvoll, um Operationen &#252;ber mehrere Subsysteme zu koordinieren. Diese Zusicherungen sind nicht mehr sicher, wenn mittels new oder clone mehrere Instanzen derselben Klasse erzeugt werden k&#246;nnen. 

class SingletonKlasse {
    private static $instance = null;
    public function singleton() {
        if(self::$instance == null) {
            self::$instance = new self();
        }
    }
    public function getInstance() {
        return self::singleton();
    }
    protected function __construct() {}
    private function __clone() {}
}</description>
		<content:encoded><![CDATA[<p>PHP5 verwendet heutzutage immer Referenzen, daher ist das kfm. &amp; &#252;berfl&#252;ssig. Das ist aber kein echtes Problem. Ein Problem ist hingegen, da&#223; der gezeigte Code nicht verhindert, da&#223; ein Entwickler versehentlich oder gar absichtlich mittels new ein zweites Objekt erzeugt oder das bestehende mit clone kopiert. Dies mu&#223; unter allen Umst&#228;nden verhindert werden &#8212; das ist ja der Sinn dieses Patterns. </p>
<p>Das Singleton-Pattern wird nicht nur aus Performancegr&#252;nden verwendet, sondern auch um zuzusichern, da&#223; nur eine einzige Instanz dieser Klasse existiert. Das ist beispielsweise sinnvoll, um Operationen &#252;ber mehrere Subsysteme zu koordinieren. Diese Zusicherungen sind nicht mehr sicher, wenn mittels new oder clone mehrere Instanzen derselben Klasse erzeugt werden k&#246;nnen. </p>
<p>class SingletonKlasse {<br />
    private static $instance = null;<br />
    public function singleton() {<br />
        if(self::$instance == null) {<br />
            self::$instance = new self();<br />
        }<br />
    }<br />
    public function getInstance() {<br />
        return self::singleton();<br />
    }<br />
    protected function __construct() {}<br />
    private function __clone() {}<br />
}</p>
]]></content:encoded>
	</item>
</channel>
</rss>

