<?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: Pluginschnittstelle mittels PHP Reflection realisieren</title>
	<atom:link href="http://blog.aditu.de/2009/12/06/pluginschnittstelle-mittels-php-reflection-realisieren/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.aditu.de/2009/12/06/pluginschnittstelle-mittels-php-reflection-realisieren/</link>
	<description>Alles rund um Webentwicklung, Fotografie, PHP und weitere interessante Themen</description>
	<lastBuildDate>Mon, 23 Jan 2012 14:53:01 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>Von: Daff</title>
		<link>http://blog.aditu.de/2009/12/06/pluginschnittstelle-mittels-php-reflection-realisieren/comment-page-1/#comment-115</link>
		<dc:creator>Daff</dc:creator>
		<pubDate>Mon, 07 Dec 2009 15:20:29 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/aditu.de/blog2/?p=263#comment-115</guid>
		<description>Hm ok schön war vielleicht etwas unglücklich ausgedrückt. Je mehr ich mit JavaScript arbeite, desto mehr kann ich mich auch dafür begeistern, denn nur weil man mit einer Sprache - wie auch immer noch mit PHP - auch Pfusch machen kann (viel von dem Pre Web 2.0 JavaScript Sourcecode war einfach nicht &quot;schön&quot; und PHP war Anfangs auch nicht mehr als eine Hobby Webentwickler Skriptsprache) macht ja nicht unbedingt die Sprache selbst schlecht. Java zwingt einen ja im Endeffekt mehr dazu ein Programm ordentlicher zu gestalten, dafür büßt man aber auch sehr viel Flexibilität ein. Unter anderem deshalb bin ich gerade so begeistert von Groovy, wo man dynamische und statische Typisierung beliebig mischen kann.</description>
		<content:encoded><![CDATA[<p>Hm ok schön war vielleicht etwas unglücklich ausgedrückt. Je mehr ich mit JavaScript arbeite, desto mehr kann ich mich auch dafür begeistern, denn nur weil man mit einer Sprache &#8211; wie auch immer noch mit PHP &#8211; auch Pfusch machen kann (viel von dem Pre Web 2.0 JavaScript Sourcecode war einfach nicht &#8220;schön&#8221; und PHP war Anfangs auch nicht mehr als eine Hobby Webentwickler Skriptsprache) macht ja nicht unbedingt die Sprache selbst schlecht. Java zwingt einen ja im Endeffekt mehr dazu ein Programm ordentlicher zu gestalten, dafür büßt man aber auch sehr viel Flexibilität ein. Unter anderem deshalb bin ich gerade so begeistert von Groovy, wo man dynamische und statische Typisierung beliebig mischen kann.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Tobi</title>
		<link>http://blog.aditu.de/2009/12/06/pluginschnittstelle-mittels-php-reflection-realisieren/comment-page-1/#comment-114</link>
		<dc:creator>Tobi</dc:creator>
		<pubDate>Mon, 07 Dec 2009 11:27:29 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/aditu.de/blog2/?p=263#comment-114</guid>
		<description>Hi David,

da gehen die Geschmäcker ja bekanntlich auseinander (besonders bei der Aussage das JavaScript nie eine schöne Sprache war fällt mir direkt jemand ein, der dir da sofort widersprechen würde).

Die Reflection Klassen werden durch PHP zur Verfügung gestellt und sind kein Bestandteil vom Zend Framework. Ich war auch skeptisch was die Notwendigkeit eines solchen Mechanismus in einer Skriptsprache angeht. Aber gerade für solche Aufgaben, wo zur Laufzeit die Eigenschaften von Klassen geprüft werden sollen, finde ich das einen sehr sauberen Weg. So könnte ich mir auch gut vorstellen einen MVC Front Controller auf diesen Weg zu implementieren. Dann könnte man beliebige Eigenschaften prüfen, z.B. ob eine Methode auch als public deklariert wurde.

Was beispielsweise den Dispatch Mechanismus des Zend Frameworks angeht, gebe ich dir recht. Aber das dieser überladen und aufgebläht ist, ist ja mittlerweile bei den Entwickler angekommen. Laut Roadmap zur Version 2.0 soll sich hier auch einiges tun. Ich bin gespannt.

Vielen Dank für deine Anmerkung! Finde es immer interessant alternative Wege zu sehen!

Viele Grüße
Tobi</description>
		<content:encoded><![CDATA[<p>Hi David,</p>
<p>da gehen die Geschmäcker ja bekanntlich auseinander (besonders bei der Aussage das JavaScript nie eine schöne Sprache war fällt mir direkt jemand ein, der dir da sofort widersprechen würde).</p>
<p>Die Reflection Klassen werden durch PHP zur Verfügung gestellt und sind kein Bestandteil vom Zend Framework. Ich war auch skeptisch was die Notwendigkeit eines solchen Mechanismus in einer Skriptsprache angeht. Aber gerade für solche Aufgaben, wo zur Laufzeit die Eigenschaften von Klassen geprüft werden sollen, finde ich das einen sehr sauberen Weg. So könnte ich mir auch gut vorstellen einen MVC Front Controller auf diesen Weg zu implementieren. Dann könnte man beliebige Eigenschaften prüfen, z.B. ob eine Methode auch als public deklariert wurde.</p>
<p>Was beispielsweise den Dispatch Mechanismus des Zend Frameworks angeht, gebe ich dir recht. Aber das dieser überladen und aufgebläht ist, ist ja mittlerweile bei den Entwickler angekommen. Laut Roadmap zur Version 2.0 soll sich hier auch einiges tun. Ich bin gespannt.</p>
<p>Vielen Dank für deine Anmerkung! Finde es immer interessant alternative Wege zu sehen!</p>
<p>Viele Grüße<br />
Tobi</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Daff</title>
		<link>http://blog.aditu.de/2009/12/06/pluginschnittstelle-mittels-php-reflection-realisieren/comment-page-1/#comment-113</link>
		<dc:creator>Daff</dc:creator>
		<pubDate>Mon, 07 Dec 2009 01:51:29 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/aditu.de/blog2/?p=263#comment-113</guid>
		<description>Ich bin mir manchmal nicht ganz sicher, ob die Entwicklung, die das Zend Framework in diese Richtung macht, wirklich so gut ist. Unbestritten, das PHP mit den OOP Features ungleich mächtiger geworden ist, aber die Zend Framework Entwickler scheinen mir manchmal etwas zu bemüht die Monster Design Patterns Java &amp; Co zu adaptieren, die in einer dem Design nach dynamischen Sprache meiner Meinung nach oft überhaupt nichts zu suchen haben. Das soll wohl professioneller wirken, kommt mir aber oft so vor, als ob sie an dem eigentlichen Ziel die Stärken der Sprache auszuarbeiten vorbeischießen. Dein obiges Beispiel hätte ich einfach so gelöst:

$classname = str_replace(&quot;.php&quot;,&quot;&quot;,$file);
$qualifiedname = $pluginPrefix.$classname;
$plugins[$qualifiedname] = new $qualifiedname();

Ok in deinem Fall müsste man wahrscheinlich noch prüfgen ob (new $qualifiedname() instanceof &quot;base_plugin&quot;).

Als Gegenbeispiele zu dem was mich am Zend Framework stört fallen mir z.B. jQuery und Ruby on Rails ein. JavaScript war nie eine &quot;schöne&quot; Sprache aber mit jQuery drumrum kann man genau das machen wozu JavaScript gut ist und das macht dann auch noch Spaß. Ruby ist von der Syntax her ungewohnt und auch nicht sonderlich flott, trotzdem konnte es in Verbindung mit Rails Unmengen von Entwicklern begeistern.

So, musste ich irgendwie mal loswerden, weil mich das beim Ausprobieren der aktuellsten Zend Framework Version ziemlich gestört hat ;)</description>
		<content:encoded><![CDATA[<p>Ich bin mir manchmal nicht ganz sicher, ob die Entwicklung, die das Zend Framework in diese Richtung macht, wirklich so gut ist. Unbestritten, das PHP mit den OOP Features ungleich mächtiger geworden ist, aber die Zend Framework Entwickler scheinen mir manchmal etwas zu bemüht die Monster Design Patterns Java &amp; Co zu adaptieren, die in einer dem Design nach dynamischen Sprache meiner Meinung nach oft überhaupt nichts zu suchen haben. Das soll wohl professioneller wirken, kommt mir aber oft so vor, als ob sie an dem eigentlichen Ziel die Stärken der Sprache auszuarbeiten vorbeischießen. Dein obiges Beispiel hätte ich einfach so gelöst:</p>
<p>$classname = str_replace(&#8220;.php&#8221;,&#8221;",$file);<br />
$qualifiedname = $pluginPrefix.$classname;<br />
$plugins[$qualifiedname] = new $qualifiedname();</p>
<p>Ok in deinem Fall müsste man wahrscheinlich noch prüfgen ob (new $qualifiedname() instanceof &#8220;base_plugin&#8221;).</p>
<p>Als Gegenbeispiele zu dem was mich am Zend Framework stört fallen mir z.B. jQuery und Ruby on Rails ein. JavaScript war nie eine &#8220;schöne&#8221; Sprache aber mit jQuery drumrum kann man genau das machen wozu JavaScript gut ist und das macht dann auch noch Spaß. Ruby ist von der Syntax her ungewohnt und auch nicht sonderlich flott, trotzdem konnte es in Verbindung mit Rails Unmengen von Entwicklern begeistern.</p>
<p>So, musste ich irgendwie mal loswerden, weil mich das beim Ausprobieren der aktuellsten Zend Framework Version ziemlich gestört hat <img src='http://blog.aditu.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
</channel>
</rss>

