<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Elegant Code &#187; .Net</title>
	<atom:link href="http://elegantcode.com/tag/net/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Refactoring the .Net Framework</title>
	<atom:link href="http://elegantcode.com/tag/net/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Elegant Code &#187; .Net</title>
	<atom:link href="http://elegantcode.com/tag/net/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com</link>
	<description></description>
	<lastBuildDate>Tue, 15 May 2012 10:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Refactoring the .Net Framework</title>
		<link>http://elegantcode.com/2008/07/24/refactoring-the-net-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=refactoring-the-net-framework</link>
		<comments>http://elegantcode.com/2008/07/24/refactoring-the-net-framework/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 02:20:10 +0000</pubDate>
		<dc:creator>David Starr</dc:creator>
				<category><![CDATA[Esoterica]]></category>
		<category><![CDATA[.Net]]></category>

		<guid isPermaLink="false">http://elegantcode.com/2008/07/24/refactoring-the-net-framework/</guid>
		<description><![CDATA[What possible reason could there be for sealing the System.IO.File class? A sealed class means I must wrap the class just to have my own functionality, rather than extending it. Further, it becomes significantly painful to mock the class in unit tests without an interface. Granted, Microsoft is doing mucho better these days, and I [...]]]></description>
			<content:encoded><![CDATA[<p>What possible reason could there be for sealing the System.IO.File class? A sealed class means I must wrap the class just to have my own functionality, rather than extending it. Further, it becomes significantly painful to mock the class in unit tests without an interface.</p>  <p>Granted, Microsoft is doing mucho better these days, and I doubt this decision would be made today if they were re-releasing the framework. So why not go in there and unseal things like this as a service pack? Look at what the ASP.Net team has done for IHttpContext as an example. Good stuff.</p>  <p>I know I am not the first or last person to rant about these things, but here’s my question. Why can’t these refactorings be released into subsequent versions of the framework?</p>  <p>The “<a href="http://msdn.microsoft.com/en-us/vs2005/aa718513.aspx" target="_blank">Extract Interface</a>” refactoring is a pretty easy one. </p>]]></content:encoded>
			<wfw:commentRss>http://elegantcode.com/2008/07/24/refactoring-the-net-framework/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

