System vs. Microsoft Namespace

Brad Abrams from MS is asking us how we view these namespaces

Personally, I would like to see, or envision the namespaces as being ‘core’ vs. ‘non-core’

For example, ‘core’ for me, System.* represents the namespaces in the .NET framework.  When I install the .NET 3.5 framework, I would expect all the namespaces to start with ‘System’ – CLR.

If there are external installs – ie. Silverlight, Ajax Toolkit, even the current ASP.NET MVC – I would expect all those to be ‘Microsoft’.  *If* later they are added to the framework – then it would be System.

ie. since WPF shipped in .NET 3.0 – all it’s namespaces would start with ‘System’ – but since Silverlight is not a part of a framework install – it would be Microsoft.Silverlight

I could then look at my references and clearly see what is a separate install vs. the core framework install.

My current mvc application would have a System.Web namespace and a Microsoft.Web.Mvc namespace.


3 thoughts on “System vs. Microsoft Namespace

  1. Great — thanks for commenting on my post! Good to hear your feedback..

    We think of Silverlight as being a subset of the .NET Framework.. THe main reason for tihs is making it easy for folks to move code between SL and the full framework…

    Do you see any problem with something like ASP.NET MVC shipping out of band in Microsoft.* and then moving to System.* when you roll it into the framework? that would mean you’d have to touch your code to take advantage of it, right? is that ok?

  2. Brad, I would agree to that. I would agree that when you roll something into the framework, you would need to make these changes.

    In a small subset of code I have had to do that with mvc, ie. when some of the functionality was moved to the Microsoft.Web.Mvc assembly after some of the previews – quite honestly, it is the value of knowing it’s ‘baked into the framework’ or it came from outside of the framework in a separate install.

  3. There is also the added bonus of easing build scripts and their integrity.

    If a convention is adhered too, one knows whether the binaries need to be shipped as a dependency or are part of the framework.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s