<?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 Wookieb.pl</title>
	<atom:link href="http://wookieb.pl/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://wookieb.pl</link>
	<description>PHP, NoSql, Scala</description>
	<lastBuildDate>Sun, 05 Feb 2012 07:22:51 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>Skomentuj Prywatne metody w coffeescript, którego autorem jest URL</title>
		<link>http://wookieb.pl/2011/07/prywatne-metody-w-coffeescript/comment-page-1/#comment-35</link>
		<dc:creator>URL</dc:creator>
		<pubDate>Sun, 05 Feb 2012 07:22:51 +0000</pubDate>
		<guid isPermaLink="false">http://wookieb.pl/?p=44#comment-35</guid>
		<description>&lt;strong&gt;... [Trackback]...&lt;/strong&gt;

[...] Read More: wookieb.pl/2011/07/prywatne-metody-w-coffeescript/ [...]...</description>
		<content:encoded><![CDATA[<p><strong>&#8230; [Trackback]&#8230;</strong></p>
<p>[...] Read More: wookieb.pl/2011/07/prywatne-metody-w-coffeescript/ [...]&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Skomentuj Obsługa błędów w Node.js za pomocą zdarzeń, którego autorem jest wookieb</title>
		<link>http://wookieb.pl/2011/08/obsluga-bledow-w-node-js-za-pomoca-zdarzen/comment-page-1/#comment-16</link>
		<dc:creator>wookieb</dc:creator>
		<pubDate>Tue, 15 Nov 2011 12:12:17 +0000</pubDate>
		<guid isPermaLink="false">http://wookieb.pl/?p=51#comment-16</guid>
		<description>@Kitek - A jaki błąd dostawałeś? Z tego co widzę dodałeś tylko &quot;prototype&quot;</description>
		<content:encoded><![CDATA[<p>@Kitek &#8211; A jaki błąd dostawałeś? Z tego co widzę dodałeś tylko &#8222;prototype&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Skomentuj Obsługa błędów w Node.js za pomocą zdarzeń, którego autorem jest kitek</title>
		<link>http://wookieb.pl/2011/08/obsluga-bledow-w-node-js-za-pomoca-zdarzen/comment-page-1/#comment-15</link>
		<dc:creator>kitek</dc:creator>
		<pubDate>Tue, 15 Nov 2011 08:34:45 +0000</pubDate>
		<guid isPermaLink="false">http://wookieb.pl/?p=51#comment-15</guid>
		<description>Nie działa mi Twój kod z EventEmitterError, dopiero po małych poprawkach coś ruszyło:

var EventEmitterError = function() {
    var emitter = new EventEmitter();
    emitter.error = function(error, code) {
        this.emit(&#039;error&#039;, error, code);
    }
    _.extend(this, emitter);
	emitter.error = _.bind(emitter.error, this);
}
EventEmitterError.prototype.enchant = function(object) {
    _.extend(object, new EventEmitterError());
}</description>
		<content:encoded><![CDATA[<p>Nie działa mi Twój kod z EventEmitterError, dopiero po małych poprawkach coś ruszyło:</p>
<p>var EventEmitterError = function() {<br />
    var emitter = new EventEmitter();<br />
    emitter.error = function(error, code) {<br />
        this.emit(&#8216;error&#8217;, error, code);<br />
    }<br />
    _.extend(this, emitter);<br />
	emitter.error = _.bind(emitter.error, this);<br />
}<br />
EventEmitterError.prototype.enchant = function(object) {<br />
    _.extend(object, new EventEmitterError());<br />
}</p>
]]></content:encoded>
	</item>
	<item>
		<title>Skomentuj Exception jako zastepca wielopoziomowego return, którego autorem jest Sławek</title>
		<link>http://wookieb.pl/2011/07/exception-jako-zastepca-return/comment-page-1/#comment-14</link>
		<dc:creator>Sławek</dc:creator>
		<pubDate>Fri, 12 Aug 2011 16:57:41 +0000</pubDate>
		<guid isPermaLink="false">http://wordpress/?p=21#comment-14</guid>
		<description>@singles

Jeszcze mozna by tablice $routeMatchers wypelniac metoda np registerMatcher(RouteMatcher $routerMatcher) ;)</description>
		<content:encoded><![CDATA[<p>@singles</p>
<p>Jeszcze mozna by tablice $routeMatchers wypelniac metoda np registerMatcher(RouteMatcher $routerMatcher) <img src='http://wookieb.pl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Skomentuj Exception jako zastepca wielopoziomowego return, którego autorem jest Spawnm</title>
		<link>http://wookieb.pl/2011/07/exception-jako-zastepca-return/comment-page-1/#comment-13</link>
		<dc:creator>Spawnm</dc:creator>
		<pubDate>Thu, 11 Aug 2011 15:29:13 +0000</pubDate>
		<guid isPermaLink="false">http://wordpress/?p=21#comment-13</guid>
		<description>Coś podobnego zastosowałem u siebie w klasie uploadu przy walidacji :)</description>
		<content:encoded><![CDATA[<p>Coś podobnego zastosowałem u siebie w klasie uploadu przy walidacji <img src='http://wookieb.pl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Skomentuj Obsługa błędów w Node.js za pomocą zdarzeń, którego autorem jest Mariusz Nowak</title>
		<link>http://wookieb.pl/2011/08/obsluga-bledow-w-node-js-za-pomoca-zdarzen/comment-page-1/#comment-12</link>
		<dc:creator>Mariusz Nowak</dc:creator>
		<pubDate>Sun, 07 Aug 2011 10:09:18 +0000</pubDate>
		<guid isPermaLink="false">http://wookieb.pl/?p=51#comment-12</guid>
		<description>W  Node.js jest przyjęta bardzo prosta konwencja obsługi błędów.
W funkcjach synchronicznych, po prostu wywalamy wyjątki

function () {
  throw new Error(&#039;Error!&#039;);
}

W funkcjach asynchronicznych przekazujemy obiekty błędu:

function (callback) {
  setTimeout(function () {
    if (somethingWentWrong) {
      callback(new Error(&#039;Error!&#039;));
    } else {
      callback(null, result);
    }
  });
};

Cały JS node&#039;a jest tak napisany, i tak się powinno pisać jeśli nie korzysta się z bardziej złożonych rozwiązań do obsługi asynchronicznych wywołań (np. https://github.com/medikoo/deferred ;P )

a pisanie czegoś takiego w node:

setTimeout(function timeoutException() {
        throw new Error(&#039;Name&#039;);
    }, 100);

jest naganne :)</description>
		<content:encoded><![CDATA[<p>W  Node.js jest przyjęta bardzo prosta konwencja obsługi błędów.<br />
W funkcjach synchronicznych, po prostu wywalamy wyjątki</p>
<p>function () {<br />
  throw new Error(&#8216;Error!&#8217;);<br />
}</p>
<p>W funkcjach asynchronicznych przekazujemy obiekty błędu:</p>
<p>function (callback) {<br />
  setTimeout(function () {<br />
    if (somethingWentWrong) {<br />
      callback(new Error(&#8216;Error!&#8217;));<br />
    } else {<br />
      callback(null, result);<br />
    }<br />
  });<br />
};</p>
<p>Cały JS node&#8217;a jest tak napisany, i tak się powinno pisać jeśli nie korzysta się z bardziej złożonych rozwiązań do obsługi asynchronicznych wywołań (np. <a href="https://github.com/medikoo/deferred" rel="nofollow">https://github.com/medikoo/deferred</a> ;P )</p>
<p>a pisanie czegoś takiego w node:</p>
<p>setTimeout(function timeoutException() {<br />
        throw new Error(&#8216;Name&#8217;);<br />
    }, 100);</p>
<p>jest naganne <img src='http://wookieb.pl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Skomentuj Obsługa błędów w Node.js za pomocą zdarzeń, którego autorem jest wookieb</title>
		<link>http://wookieb.pl/2011/08/obsluga-bledow-w-node-js-za-pomoca-zdarzen/comment-page-1/#comment-11</link>
		<dc:creator>wookieb</dc:creator>
		<pubDate>Sun, 07 Aug 2011 09:13:05 +0000</pubDate>
		<guid isPermaLink="false">http://wookieb.pl/?p=51#comment-11</guid>
		<description>No niestety. W jakiś sposób musimy znaleźć jeden wspólny &quot;worek&quot; dla błędów i jest nią właśnie metoda error, co (jak dla mnie) jest znacznie wygodniejsze. Poza tym niekoniecznie musimy wykorzystać ku temu kontroler. Nawet zwykła funkcja anonimowa może być w ten sposób wykorzystana.

Co do tego, że kontroler zawsze powinien rozszerzać EventEmitterError-a to się zgodzę i faktycznie mogłem to uwzględnić od razu w kodzie... Potem poprawię :)</description>
		<content:encoded><![CDATA[<p>No niestety. W jakiś sposób musimy znaleźć jeden wspólny &#8222;worek&#8221; dla błędów i jest nią właśnie metoda error, co (jak dla mnie) jest znacznie wygodniejsze. Poza tym niekoniecznie musimy wykorzystać ku temu kontroler. Nawet zwykła funkcja anonimowa może być w ten sposób wykorzystana.</p>
<p>Co do tego, że kontroler zawsze powinien rozszerzać EventEmitterError-a to się zgodzę i faktycznie mogłem to uwzględnić od razu w kodzie&#8230; Potem poprawię <img src='http://wookieb.pl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Skomentuj Prywatne metody w coffeescript, którego autorem jest wookieb</title>
		<link>http://wookieb.pl/2011/07/prywatne-metody-w-coffeescript/comment-page-1/#comment-10</link>
		<dc:creator>wookieb</dc:creator>
		<pubDate>Sun, 07 Aug 2011 09:08:27 +0000</pubDate>
		<guid isPermaLink="false">http://wookieb.pl/?p=44#comment-10</guid>
		<description>Z tego co ostatnio zaglądałem jest parę propozycji rozwiązania tego problemu poprzez zmiany w Coffee, ale póki co trzeba czekać na rozwój sytuacji.</description>
		<content:encoded><![CDATA[<p>Z tego co ostatnio zaglądałem jest parę propozycji rozwiązania tego problemu poprzez zmiany w Coffee, ale póki co trzeba czekać na rozwój sytuacji.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Skomentuj Prywatne metody w coffeescript, którego autorem jest Piotrek Reinmar Koszuliński</title>
		<link>http://wookieb.pl/2011/07/prywatne-metody-w-coffeescript/comment-page-1/#comment-9</link>
		<dc:creator>Piotrek Reinmar Koszuliński</dc:creator>
		<pubDate>Sun, 07 Aug 2011 08:46:54 +0000</pubDate>
		<guid isPermaLink="false">http://wookieb.pl/?p=44#comment-9</guid>
		<description>Ktoś przesadził z ilością cukru i teraz mdli jak się to pije :P Chyba dlatego nie przepadam za nakładkami na języki. Ja od kilku lat zgłębiam JS, żeby w każdym wypadku rozumieć co się stanie. Korzystając z CoffeeScriptu może nie jest tak dużo do nauki, ale na pewno też nie jest to na zasadzie &quot;zobacz na przykładziki jakie są na stronie CS! Tam jest wszystko&quot;. W szczególności wprowadzenie nowych tworów musi wprowadzać nową semantykę, co też stało się w tym wypadku.</description>
		<content:encoded><![CDATA[<p>Ktoś przesadził z ilością cukru i teraz mdli jak się to pije <img src='http://wookieb.pl/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  Chyba dlatego nie przepadam za nakładkami na języki. Ja od kilku lat zgłębiam JS, żeby w każdym wypadku rozumieć co się stanie. Korzystając z CoffeeScriptu może nie jest tak dużo do nauki, ale na pewno też nie jest to na zasadzie &#8222;zobacz na przykładziki jakie są na stronie CS! Tam jest wszystko&#8221;. W szczególności wprowadzenie nowych tworów musi wprowadzać nową semantykę, co też stało się w tym wypadku.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Skomentuj Obsługa błędów w Node.js za pomocą zdarzeń, którego autorem jest Piotrek Reinmar Koszuliński</title>
		<link>http://wookieb.pl/2011/08/obsluga-bledow-w-node-js-za-pomoca-zdarzen/comment-page-1/#comment-8</link>
		<dc:creator>Piotrek Reinmar Koszuliński</dc:creator>
		<pubDate>Sun, 07 Aug 2011 08:37:23 +0000</pubDate>
		<guid isPermaLink="false">http://wookieb.pl/?p=51#comment-8</guid>
		<description>Ciekawe rozwiązanie. Jedyne na co bym zwrócił uwagę, to fakt, że komplikujemy sprawę wykorzystania kontrolera nawet w przypadku kiedy nie chce nam się obsługiwać jego błędów. Bo jeśli zapomnimy o:     Emitter.enchant(controller); to wywali nam się node z powodu braku metody controller.error(). Dlatego przyjąłbym, że tego typu klasa zawsze rozszerza EventEmittera(Error). Tylko nie wiem czy tym samym nie kończymy na dosyć standardowym rozwiązaniu :)</description>
		<content:encoded><![CDATA[<p>Ciekawe rozwiązanie. Jedyne na co bym zwrócił uwagę, to fakt, że komplikujemy sprawę wykorzystania kontrolera nawet w przypadku kiedy nie chce nam się obsługiwać jego błędów. Bo jeśli zapomnimy o:     Emitter.enchant(controller); to wywali nam się node z powodu braku metody controller.error(). Dlatego przyjąłbym, że tego typu klasa zawsze rozszerza EventEmittera(Error). Tylko nie wiem czy tym samym nie kończymy na dosyć standardowym rozwiązaniu <img src='http://wookieb.pl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
</channel>
</rss>

