<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Kommentare zu: TemplateMethod vs. method_exists()-Prüfung</title>
	<atom:link href="http://blog.ebene7.com/2012/01/11/templatemethod-vs-method-exists-pruefung/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.ebene7.com/2012/01/11/templatemethod-vs-method-exists-pruefung/</link>
	<description></description>
	<lastBuildDate>Wed, 19 Dec 2018 08:31:45 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>Von: Daniel</title>
		<link>https://blog.ebene7.com/2012/01/11/templatemethod-vs-method-exists-pruefung/comment-page-1/#comment-9780</link>
		<dc:creator>Daniel</dc:creator>
		<pubDate>Wed, 11 Jan 2012 10:53:26 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ebene7.com/?p=3295#comment-9780</guid>
		<description>Schaden wird es sicher nicht. :-)

Wie schon gesagt geht es ja darum, dass die aufrufende Klasse diese (leere) Methode immer schon mitbringt, bzw. in diesen Beispielen wie sich die verschiedenen Aufrufe mit/ohne Prüfung auf die Verarbeitungszeit auswirken.</description>
		<content:encoded><![CDATA[<p>Schaden wird es sicher nicht. <img src='https://blog.ebene7.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Wie schon gesagt geht es ja darum, dass die aufrufende Klasse diese (leere) Methode immer schon mitbringt, bzw. in diesen Beispielen wie sich die verschiedenen Aufrufe mit/ohne Prüfung auf die Verarbeitungszeit auswirken.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Pierre</title>
		<link>https://blog.ebene7.com/2012/01/11/templatemethod-vs-method-exists-pruefung/comment-page-1/#comment-9779</link>
		<dc:creator>Pierre</dc:creator>
		<pubDate>Wed, 11 Jan 2012 10:42:59 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ebene7.com/?p=3295#comment-9779</guid>
		<description>Es empfiehlt sich trotzdem, ein Interface zu nutzen, welches diese Methode vorgibt. Erstens, man kann relativ einfach Mocken in Tests. Zweitens wird sichergestellt, das es die Methode gibt (erspart mit Type Hinting den method_exists Check). Drittens, eine Abstrakte Basis-Klasse kann die Methode (leer) implementieren.</description>
		<content:encoded><![CDATA[<p>Es empfiehlt sich trotzdem, ein Interface zu nutzen, welches diese Methode vorgibt. Erstens, man kann relativ einfach Mocken in Tests. Zweitens wird sichergestellt, das es die Methode gibt (erspart mit Type Hinting den method_exists Check). Drittens, eine Abstrakte Basis-Klasse kann die Methode (leer) implementieren.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Daniel</title>
		<link>https://blog.ebene7.com/2012/01/11/templatemethod-vs-method-exists-pruefung/comment-page-1/#comment-9778</link>
		<dc:creator>Daniel</dc:creator>
		<pubDate>Wed, 11 Jan 2012 09:25:22 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ebene7.com/?p=3295#comment-9778</guid>
		<description>Bei den Templatemethoden geht es genau darum, dass sie nicht von einer erbenden Klasse implementiert werden müssen wie das bei der Verwendung von Interfaces oder abstrakten Klassen der Fall wäre.

Dadurch lassen sich z.B. Hooks in Softwareprojekten umsetzen, wobei diese innerhalb einer bestehenden Logik immer aufgerufen werden und es dadurch ist, diese einfach durch eigenen Code zu erweitern.</description>
		<content:encoded><![CDATA[<p>Bei den Templatemethoden geht es genau darum, dass sie nicht von einer erbenden Klasse implementiert werden müssen wie das bei der Verwendung von Interfaces oder abstrakten Klassen der Fall wäre.</p>
<p>Dadurch lassen sich z.B. Hooks in Softwareprojekten umsetzen, wobei diese innerhalb einer bestehenden Logik immer aufgerufen werden und es dadurch ist, diese einfach durch eigenen Code zu erweitern.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Norbert</title>
		<link>https://blog.ebene7.com/2012/01/11/templatemethod-vs-method-exists-pruefung/comment-page-1/#comment-9776</link>
		<dc:creator>Norbert</dc:creator>
		<pubDate>Wed, 11 Jan 2012 08:30:43 +0000</pubDate>
		<guid isPermaLink="false">http://blog.ebene7.com/?p=3295#comment-9776</guid>
		<description>Wenn es nur darum geht sicherzustellen, dass eine Methode in einer Klasse vorhanden ist kann man auch einfach ein entsprechendes Interface definieren und die Klasse implementiert dieses dann. 

&lt;code&gt;method_exists&lt;/code&gt; nicht zu benutzen hat noch einen weiteren Vorteil: Refactorings werden leichter und man muss nicht mit Strings von Methodennamen arbeiten.</description>
		<content:encoded><![CDATA[<p>Wenn es nur darum geht sicherzustellen, dass eine Methode in einer Klasse vorhanden ist kann man auch einfach ein entsprechendes Interface definieren und die Klasse implementiert dieses dann. </p>
<p><code>method_exists</code> nicht zu benutzen hat noch einen weiteren Vorteil: Refactorings werden leichter und man muss nicht mit Strings von Methodennamen arbeiten.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
