<?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>Komentarze do: Pluginizowanie aplikacji PHP</title>
	<atom:link href="http://tylczynski.pl/php/pluginizowanie-aplikacji-php/feed" rel="self" type="application/rss+xml" />
	<link>http://tylczynski.pl/php/pluginizowanie-aplikacji-php</link>
	<description>Internet od strony developera</description>
	<lastBuildDate>Tue, 24 May 2011 16:06:51 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Autor: Damian Tylczyński</title>
		<link>http://tylczynski.pl/php/pluginizowanie-aplikacji-php/comment-page-1#comment-64</link>
		<dc:creator>Damian Tylczyński</dc:creator>
		<pubDate>Mon, 18 Jan 2010 11:36:25 +0000</pubDate>
		<guid isPermaLink="false">http://tylczynski.pl/?p=138#comment-64</guid>
		<description>Szczerze polecam komponenty Symfony, kawał świetnego softu.</description>
		<content:encoded><![CDATA[<p>Szczerze polecam komponenty Symfony, kawał świetnego softu.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: Tomasz Kowalczyk</title>
		<link>http://tylczynski.pl/php/pluginizowanie-aplikacji-php/comment-page-1#comment-38</link>
		<dc:creator>Tomasz Kowalczyk</dc:creator>
		<pubDate>Sun, 03 Jan 2010 16:25:59 +0000</pubDate>
		<guid isPermaLink="false">http://tylczynski.pl/?p=138#comment-38</guid>
		<description>Miło wygląda, trzeba będzie sprawdzić, chociaż pewnie i tak zrobię po swojemu. ;]</description>
		<content:encoded><![CDATA[<p>Miło wygląda, trzeba będzie sprawdzić, chociaż pewnie i tak zrobię po swojemu. ;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: Damian Tylczyński</title>
		<link>http://tylczynski.pl/php/pluginizowanie-aplikacji-php/comment-page-1#comment-37</link>
		<dc:creator>Damian Tylczyński</dc:creator>
		<pubDate>Thu, 31 Dec 2009 09:58:06 +0000</pubDate>
		<guid isPermaLink="false">http://tylczynski.pl/?p=138#comment-37</guid>
		<description>Ładne i proste rozwiązanie, może trochę nazbyt proste, ale na pewno elegancko spełnia swoje zadanie. Co do post scriptum, muszę nadmienić, że nazwy są jednak usystematyzowane: klasy i ich metody są pisane &quot;wielbłądzim&quot;, funkcje globalne zaś pisane małymi literami z użyciem podkreślenia, podobnie jak w samej bibliotece standardowej PHP.</description>
		<content:encoded><![CDATA[<p>Ładne i proste rozwiązanie, może trochę nazbyt proste, ale na pewno elegancko spełnia swoje zadanie. Co do post scriptum, muszę nadmienić, że nazwy są jednak usystematyzowane: klasy i ich metody są pisane &#8220;wielbłądzim&#8221;, funkcje globalne zaś pisane małymi literami z użyciem podkreślenia, podobnie jak w samej bibliotece standardowej PHP.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: cojack</title>
		<link>http://tylczynski.pl/php/pluginizowanie-aplikacji-php/comment-page-1#comment-36</link>
		<dc:creator>cojack</dc:creator>
		<pubDate>Thu, 31 Dec 2009 09:40:49 +0000</pubDate>
		<guid isPermaLink="false">http://tylczynski.pl/?p=138#comment-36</guid>
		<description>Ciekawe, a nie wiem czy kolega widział moje podejście do problemu, może nie tak szczegółowo opisane, ale podeśle linka: http://cojack.os-cms.pl/dispatcher-dyspozytor/241

Pozdrawiam.

P.S. raz piszesz funkcje w CaMeLL pattern, a raz jak Ci się podoba, trochę usystematyzować się proszę ;)</description>
		<content:encoded><![CDATA[<p>Ciekawe, a nie wiem czy kolega widział moje podejście do problemu, może nie tak szczegółowo opisane, ale podeśle linka: <a href="http://cojack.os-cms.pl/dispatcher-dyspozytor/241" rel="nofollow">http://cojack.os-cms.pl/dispatcher-dyspozytor/241</a></p>
<p>Pozdrawiam.</p>
<p>P.S. raz piszesz funkcje w CaMeLL pattern, a raz jak Ci się podoba, trochę usystematyzować się proszę ;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: Damian Tylczyński</title>
		<link>http://tylczynski.pl/php/pluginizowanie-aplikacji-php/comment-page-1#comment-33</link>
		<dc:creator>Damian Tylczyński</dc:creator>
		<pubDate>Wed, 30 Dec 2009 11:27:07 +0000</pubDate>
		<guid isPermaLink="false">http://tylczynski.pl/?p=138#comment-33</guid>
		<description>Jednym ze szkieletów modularnych aplikacji jest na pewno FLOW3 (http://flow3.typo3.org). Przeglądałem jego dokumentację i na pierwszy rzut oka przeraził mnie kompleksowością rozwiązań AOP. Zaryzykuję stwierdzenie, że to nowa jakość wśród frameworków dla PHP.
Literówki poprawiłem, dziękuję za ich wskazanie :)</description>
		<content:encoded><![CDATA[<p>Jednym ze szkieletów modularnych aplikacji jest na pewno FLOW3 (<a href="http://flow3.typo3.org" rel="nofollow">http://flow3.typo3.org</a>). Przeglądałem jego dokumentację i na pierwszy rzut oka przeraził mnie kompleksowością rozwiązań AOP. Zaryzykuję stwierdzenie, że to nowa jakość wśród frameworków dla PHP.<br />
Literówki poprawiłem, dziękuję za ich wskazanie :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: Zyx</title>
		<link>http://tylczynski.pl/php/pluginizowanie-aplikacji-php/comment-page-1#comment-30</link>
		<dc:creator>Zyx</dc:creator>
		<pubDate>Tue, 29 Dec 2009 11:53:12 +0000</pubDate>
		<guid isPermaLink="false">http://tylczynski.pl/?p=138#comment-30</guid>
		<description>Odpowiednia architektura nie rozwiąże nam wszystkich problemów. Możemy mieć narzędzia takie, jak mechanizm filtrów, wtyczek itd., ale trzeba pamiętać, że wciąż są to jedynie narzędzia, które trzeba jeszcze umieć wykorzystać. Rzadko kiedy zdarza się, by wtyczki były zupełnie niezależne od całego środowiska i swego najbliższego otoczenia, dlatego na etapie ich projektowania musimy przewidzieć możliwe/spodziewane interakcje i korzystając z omówionych we wpisie narzędzi, zaprogramować je. Dopiero po uwzględnieniu tego możemy mówić o prawdziwie modularnej aplikacji.

Ciekawym pomysłem, jeśli chodzi o same wzorce projektowe, jest hierarchiczny MVC. Raczej nie spotyka się go we frameworkach PHP, lub też rozwiązuje się ten problem w inny sposób (łańcuchy akcji itd.), ale miałem okazję pisać aplikację z jego wykorzystaniem i dało to naprawdę fajny rezultat.</description>
		<content:encoded><![CDATA[<p>Odpowiednia architektura nie rozwiąże nam wszystkich problemów. Możemy mieć narzędzia takie, jak mechanizm filtrów, wtyczek itd., ale trzeba pamiętać, że wciąż są to jedynie narzędzia, które trzeba jeszcze umieć wykorzystać. Rzadko kiedy zdarza się, by wtyczki były zupełnie niezależne od całego środowiska i swego najbliższego otoczenia, dlatego na etapie ich projektowania musimy przewidzieć możliwe/spodziewane interakcje i korzystając z omówionych we wpisie narzędzi, zaprogramować je. Dopiero po uwzględnieniu tego możemy mówić o prawdziwie modularnej aplikacji.</p>
<p>Ciekawym pomysłem, jeśli chodzi o same wzorce projektowe, jest hierarchiczny MVC. Raczej nie spotyka się go we frameworkach PHP, lub też rozwiązuje się ten problem w inny sposób (łańcuchy akcji itd.), ale miałem okazję pisać aplikację z jego wykorzystaniem i dało to naprawdę fajny rezultat.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: Adawo</title>
		<link>http://tylczynski.pl/php/pluginizowanie-aplikacji-php/comment-page-1#comment-29</link>
		<dc:creator>Adawo</dc:creator>
		<pubDate>Tue, 29 Dec 2009 08:22:41 +0000</pubDate>
		<guid isPermaLink="false">http://tylczynski.pl/?p=138#comment-29</guid>
		<description>A zawsze zastanawiałem się jak to w Wordpressie zrobili, teraz już wiem :) Ale jedna uwaga: w pierwszej wersji klasy DiContainer nie powinno być czasem: 

static protected $_map = array();

zamiast:

static protected function $_map = array();  

;)</description>
		<content:encoded><![CDATA[<p>A zawsze zastanawiałem się jak to w Wordpressie zrobili, teraz już wiem :) Ale jedna uwaga: w pierwszej wersji klasy DiContainer nie powinno być czasem: </p>
<p>static protected $_map = array();</p>
<p>zamiast:</p>
<p>static protected function $_map = array();  </p>
<p>;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: Marian</title>
		<link>http://tylczynski.pl/php/pluginizowanie-aplikacji-php/comment-page-1#comment-28</link>
		<dc:creator>Marian</dc:creator>
		<pubDate>Tue, 29 Dec 2009 08:06:39 +0000</pubDate>
		<guid isPermaLink="false">http://tylczynski.pl/?p=138#comment-28</guid>
		<description>Osobiście uważam tworzenie obiektów w postaci new $class(); za dość brzydkie. 
O wiele ładniej wygląda coś takiego:
$reflection = new ReflectionClass( $class);
$obj = $reflection-&gt;newInstance( $args);
do tego można się upewnić czy dana klasa na pewno jest tym co chcemy (np przez $reflection-&gt;implementsInterface( &#039;Controller&#039;); ).

dla tych którzy lubią jednoliniowe rozwiązania:
$obj = call_user_func_array( array( new ReflectionClass( $class), &#039;newInstance&#039;), $args);

Poza tym artykuł ciekawy.</description>
		<content:encoded><![CDATA[<p>Osobiście uważam tworzenie obiektów w postaci new $class(); za dość brzydkie.<br />
O wiele ładniej wygląda coś takiego:<br />
$reflection = new ReflectionClass( $class);<br />
$obj = $reflection-&gt;newInstance( $args);<br />
do tego można się upewnić czy dana klasa na pewno jest tym co chcemy (np przez $reflection-&gt;implementsInterface( &#8216;Controller&#8217;); ).</p>
<p>dla tych którzy lubią jednoliniowe rozwiązania:<br />
$obj = call_user_func_array( array( new ReflectionClass( $class), &#8216;newInstance&#8217;), $args);</p>
<p>Poza tym artykuł ciekawy.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

