<?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>Comments for Curried Functions</title>
	<atom:link href="http://blog.efvincent.com/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.efvincent.com</link>
	<description>Development, mostly .NET... but anything cool</description>
	<lastBuildDate>Wed, 20 Mar 2013 21:03:44 -0700</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Comment on Practical Dependency Injection 101 by Martix</title>
		<link>http://blog.efvincent.com/practical-di-101/comment-page-1/#comment-340</link>
		<dc:creator>Martix</dc:creator>
		<pubDate>Wed, 20 Mar 2013 21:03:44 +0000</pubDate>
		<guid isPermaLink="false">http://blog.efvincent.com/?p=224#comment-340</guid>
		<description>nice and clean article, thanks ;)</description>
		<content:encoded><![CDATA[<p>nice and clean article, thanks <img src='http://blog.efvincent.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Practical Dependency Injection 101 by Gary</title>
		<link>http://blog.efvincent.com/practical-di-101/comment-page-1/#comment-338</link>
		<dc:creator>Gary</dc:creator>
		<pubDate>Thu, 31 Jan 2013 21:27:13 +0000</pubDate>
		<guid isPermaLink="false">http://blog.efvincent.com/?p=224#comment-338</guid>
		<description>good job thanks!</description>
		<content:encoded><![CDATA[<p>good job thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on DI &#8211; Constructor Injection, Bootstrapping by EFVincent</title>
		<link>http://blog.efvincent.com/di-bootstrap/comment-page-1/#comment-336</link>
		<dc:creator>EFVincent</dc:creator>
		<pubDate>Thu, 13 Dec 2012 22:40:18 +0000</pubDate>
		<guid isPermaLink="false">http://blog.efvincent.com/?p=249#comment-336</guid>
		<description>Depending on how you&#039;ve wired up, instantiating a dependency might create a whole bunch of other classes. That&#039;s true. Sometimes a class will always need an instance of a dependent class, as in this example, so the constructor calls for the instance, and it will be instantiated. If it doesn&#039;t necessarily need the dependent class, it can call for an instance of Func thingFactory, and the DI container will supply a factory function. This way you still can have control over when the dependency is created, but not have responsibility for how that dependency is created.

The factory pattern is not mutex with the DI pattern. You don&#039;t have to use the DI container to instantiate everything. I like to think of the concepts of &quot;services&quot; within your application, and these things are great examples of when to use a DI container. A canonical example is the logger. You do logging in your app, so you can think of logging as a &quot;service&quot; that is consumed by other classes. Your classes can have a constructor that calls for an instance of ILogger. Now, your data transfer objects, your view models, stuff like that, they&#039;re not really good candidates for construction by the DI container. If you have a service that returns instances of &quot;people&quot; objects, you can still use your traditional methods for creating sets of models, use your polymorphic patterns as you needed to model the problem domain. 

Another example, I have a project that I&#039;m working on that has a set of services that handle data access, abstracting away the differences between Oracle and SQL Server and drivers and all that stuff. I consider that a &quot;service&quot; that&#039;s used by pretty much any class that needs to talk to a database. The DI container supplies the correctly configured instances of the data builder classes to classes that depend on them. These classes use the data services, but they build the data transfer objects the usual way. So the idea is to use what makes sense in a particular situation. Eventually it&#039;ll be second nature, you&#039;ll find yourself newing up a class, and it&#039;ll just *feel* wrong, you&#039;ll get the sense that something else should handle construction and lifetime, and you just need to use a service. That&#039;s where you use DI.

Thanks for the comments, and happy coding :)</description>
		<content:encoded><![CDATA[<p>Depending on how you&#8217;ve wired up, instantiating a dependency might create a whole bunch of other classes. That&#8217;s true. Sometimes a class will always need an instance of a dependent class, as in this example, so the constructor calls for the instance, and it will be instantiated. If it doesn&#8217;t necessarily need the dependent class, it can call for an instance of Func thingFactory, and the DI container will supply a factory function. This way you still can have control over when the dependency is created, but not have responsibility for how that dependency is created.</p>
<p>The factory pattern is not mutex with the DI pattern. You don&#8217;t have to use the DI container to instantiate everything. I like to think of the concepts of &#8220;services&#8221; within your application, and these things are great examples of when to use a DI container. A canonical example is the logger. You do logging in your app, so you can think of logging as a &#8220;service&#8221; that is consumed by other classes. Your classes can have a constructor that calls for an instance of ILogger. Now, your data transfer objects, your view models, stuff like that, they&#8217;re not really good candidates for construction by the DI container. If you have a service that returns instances of &#8220;people&#8221; objects, you can still use your traditional methods for creating sets of models, use your polymorphic patterns as you needed to model the problem domain. </p>
<p>Another example, I have a project that I&#8217;m working on that has a set of services that handle data access, abstracting away the differences between Oracle and SQL Server and drivers and all that stuff. I consider that a &#8220;service&#8221; that&#8217;s used by pretty much any class that needs to talk to a database. The DI container supplies the correctly configured instances of the data builder classes to classes that depend on them. These classes use the data services, but they build the data transfer objects the usual way. So the idea is to use what makes sense in a particular situation. Eventually it&#8217;ll be second nature, you&#8217;ll find yourself newing up a class, and it&#8217;ll just *feel* wrong, you&#8217;ll get the sense that something else should handle construction and lifetime, and you just need to use a service. That&#8217;s where you use DI.</p>
<p>Thanks for the comments, and happy coding <img src='http://blog.efvincent.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on DI &#8211; Constructor Injection, Bootstrapping by BrainDrain</title>
		<link>http://blog.efvincent.com/di-bootstrap/comment-page-1/#comment-335</link>
		<dc:creator>BrainDrain</dc:creator>
		<pubDate>Thu, 13 Dec 2012 00:36:06 +0000</pubDate>
		<guid isPermaLink="false">http://blog.efvincent.com/?p=249#comment-335</guid>
		<description>Thank you, A very well articulated post. I am a beginner at dependency Injection and am trying to better my knowledge, particularly with regard to architectural patterns using dependency injection in console apps.  I have a few questions that are not immediately apparent in your post:

By calling:

                 var dal = Container.Resolve();

in the boot strapper, are you loading the entire object graph into memory at the outset? wouldn&#039;t the container immediately resolve all its dependencies (i.e. the whole graph)? If that is so, then how how do you manage conditionally created objects/polymorphic objects that would have more traditionally been supplied using a factory pattern, and only instantiated on demand. Or do you drop the purist dependency approach and inject factories into your callstack. 

Thanks in advance for your assistance.</description>
		<content:encoded><![CDATA[<p>Thank you, A very well articulated post. I am a beginner at dependency Injection and am trying to better my knowledge, particularly with regard to architectural patterns using dependency injection in console apps.  I have a few questions that are not immediately apparent in your post:</p>
<p>By calling:</p>
<p>                 var dal = Container.Resolve();</p>
<p>in the boot strapper, are you loading the entire object graph into memory at the outset? wouldn&#8217;t the container immediately resolve all its dependencies (i.e. the whole graph)? If that is so, then how how do you manage conditionally created objects/polymorphic objects that would have more traditionally been supplied using a factory pattern, and only instantiated on demand. Or do you drop the purist dependency approach and inject factories into your callstack. </p>
<p>Thanks in advance for your assistance.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Practical Dependency Injection 101 by Kamal</title>
		<link>http://blog.efvincent.com/practical-di-101/comment-page-1/#comment-334</link>
		<dc:creator>Kamal</dc:creator>
		<pubDate>Fri, 07 Dec 2012 18:20:55 +0000</pubDate>
		<guid isPermaLink="false">http://blog.efvincent.com/?p=224#comment-334</guid>
		<description>Its a simple and easy to understand article. Well explained!!!!</description>
		<content:encoded><![CDATA[<p>Its a simple and easy to understand article. Well explained!!!!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on In Car Video&#8211;Carolina Motorsports Park by Andrew Newbury</title>
		<link>http://blog.efvincent.com/in-car-videocarolina-motorsports-park/comment-page-1/#comment-330</link>
		<dc:creator>Andrew Newbury</dc:creator>
		<pubDate>Mon, 09 Jan 2012 22:28:48 +0000</pubDate>
		<guid isPermaLink="false">http://blog.efvincent.com/in-car-videocarolina-motorsports-park/#comment-330</guid>
		<description>very interested in the program you used to get the data into a format that after effects could use, I&#039;m looking to do something similar but with an Aim Solo GPS laptimer/datalogger &amp; a ContourHD and get the data onto a Premier video. Could you make the pgm available? TY!</description>
		<content:encoded><![CDATA[<p>very interested in the program you used to get the data into a format that after effects could use, I&#8217;m looking to do something similar but with an Aim Solo GPS laptimer/datalogger &amp; a ContourHD and get the data onto a Premier video. Could you make the pgm available? TY!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Practical Dependency Injection 101 by Sivakumar M</title>
		<link>http://blog.efvincent.com/practical-di-101/comment-page-1/#comment-329</link>
		<dc:creator>Sivakumar M</dc:creator>
		<pubDate>Mon, 19 Dec 2011 06:07:49 +0000</pubDate>
		<guid isPermaLink="false">http://blog.efvincent.com/?p=224#comment-329</guid>
		<description>Thanks for your post. It is a simple good practical example for anyone to relate to their daily work.</description>
		<content:encoded><![CDATA[<p>Thanks for your post. It is a simple good practical example for anyone to relate to their daily work.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Parsing Json using F# by Gustavo Guerra</title>
		<link>http://blog.efvincent.com/parsing-json-using-f/comment-page-1/#comment-327</link>
		<dc:creator>Gustavo Guerra</dc:creator>
		<pubDate>Sat, 22 Oct 2011 10:47:44 +0000</pubDate>
		<guid isPermaLink="false">http://blog.efvincent.com/?p=116#comment-327</guid>
		<description>This has been incorporated info FSharpx:
https://github.com/fsharp/fsharpx/blob/master/src/FSharpx.TypeProviders/JSON.fs</description>
		<content:encoded><![CDATA[<p>This has been incorporated info FSharpx:<br />
<a href="https://github.com/fsharp/fsharpx/blob/master/src/FSharpx.TypeProviders/JSON.fs" rel="nofollow">https://github.com/fsharp/fsharpx/blob/master/src/FSharpx.TypeProviders/JSON.fs</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on A Taste of Dependency Injection, Testing, and Mocking by DI &#8211; Constructor Injection, Bootstrapping</title>
		<link>http://blog.efvincent.com/di-mock/comment-page-1/#comment-202</link>
		<dc:creator>DI &#8211; Constructor Injection, Bootstrapping</dc:creator>
		<pubDate>Fri, 24 Jun 2011 18:06:41 +0000</pubDate>
		<guid isPermaLink="false">http://blog.efvincent.com/?p=229#comment-202</guid>
		<description>[...] EFVincent on 06/24/2011   I recently blogged about the Practical Dependency Injection 101, then DI, testing and mocking. In this post I’ll get into the concept of bootstrapping as it relates to dependency [...]</description>
		<content:encoded><![CDATA[<p>[...] EFVincent on 06/24/2011   I recently blogged about the Practical Dependency Injection 101, then DI, testing and mocking. In this post I’ll get into the concept of bootstrapping as it relates to dependency [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Lambdas – Exposing Disposable Resources in your API by Roll Your Own Language Constructs</title>
		<link>http://blog.efvincent.com/c-nuts-and-bolts-lambdas02/comment-page-1/#comment-75</link>
		<dc:creator>Roll Your Own Language Constructs</dc:creator>
		<pubDate>Thu, 02 Jun 2011 17:59:48 +0000</pubDate>
		<guid isPermaLink="false">http://blog.efvincent.com/?p=78#comment-75</guid>
		<description>[...] on 02/03/2010   My last couple of blog entries were ostensibly about lambda functions (last one, one before). With these ideas, or a general comfort level with lambdas and the Action&lt;&gt; and Func&lt;&gt; [...]</description>
		<content:encoded><![CDATA[<p>[...] on 02/03/2010   My last couple of blog entries were ostensibly about lambda functions (last one, one before). With these ideas, or a general comfort level with lambdas and the Action&lt;&gt; and Func&lt;&gt; [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>
