The World’s Leading Microsoft .NET Magazine
   
 
The .NET Addict's Blog

My Top Tags

                                                           

My RSS Feeds








I heart FeedBurner

Latest Diggs - Programming

Computers Blogs - Blog Top Sites

Site Hits

Total: 4,899,515
since: 19 Jan 2005

One Framework to Rule them All

posted Mon 25 Feb 08

Anytime you can create a blog post about the .NET Framework that also includes borrowed half-quotations from Lord of the Rings, you've got to take that opportunity.

Like pretty much every other RIA developer, I am sitting back anxiously awaiting the arrival of Silverlight 2.0. Silverlight 2.0, to me, represents the idea of what Silverlight should have been from the start. It is a rich, full-featured, amazingly powerful subset of WPF that runs on a miniature CLR and allows developers to re-use their existing experience, design patterns, skills, knowledge, and abilities with C#, .NET, and WPF. It also allows designers to re-use their knowledge and experience using the Expression Blend suite of products for producing XAML-based designs and artifacts.

Pulling back a little bit, there's a bigger picture here. On the server side, one might use a traditional RDBMS. If you do, you might end up with a tool like SQL Server 2005 or 2008. If this is the case, you might even find yourself writing stored procedures in C# on the full CLR because SQL is a full-featured embedded CLR host.

From there, you might want to create a web application. For that, you've got ASP.NET which is also a CLR-based product that allows you to re-use your existing C# skills. If you want, you can even use the ASP.NET MVC framework which gives you that agile feeling and highly testable output that many Ruby on Rails developers crave but have been missing up until now.

Next you've got the browser tier itself. Here you can use Silverlight to create extremely rich applications that have full media support, rich, interactive, data-bound, templated and skinnable controls complete with animations, brushes, graphics support, and much more. All of this is built on top of XAML and C#, which are skills you might already have from working on the client tier.

Next you're down at the client tier and you're building an incredibly beautiful, rich application that you might even consider a showcase application. This app is being built using WPF, XAML, and C# - all technologies you're already using on top of a framework that you're already using and deeply familiar with.

But it's not over there. Now you are on the mobile device level working with Windows Mobile 6. Using the .NET Compact Framework 3.5, you have a re-usable subset of .NET Framework functionality that includes LINQ, networking support, web services, and much more including the ability to create winforms-like applications on mobile devices.

I'm not saying that Microsoft's path is the only path because there are hundreds of other paths to go. However, one thing developers like is consistency and another thing developers hate is having to swap context or swap tools. If Microsoft can continue toward opening their back-end protocols, opening their document formats, and giving developers access to the same (or varied subsets of) functionality everywhere from the deep back end to the cloud itself to the browser to client apps to mobile apps - they might truly end up with One Framework to Rule them All. They've definitely got a long way to go, but what I'm seeing with Silverlight is a gap that used to exist in which only Adobe resided that is now filled and, quite possibly, filled so well that many developers (especially existing .NET developers) will simply choose to go with the familiar framework they've been using for so long.

If you are a developer that has to create a rich, desktop application that consumes web services, and you also have to write those web services, and you also have to write the stored procedures that supply those services with data, and you also have to write a windows mobile client that interacts with the rest of the product suite - which would you rather choose - a bunch of disjoint frameworks, or re-use subset of the .NET Framework across every single tier in the product suite?

I realize there are lots of opinions on this subject, and there is a lot of merit in picking the best tool for the job, but so far, there are very few tools I've seen that do the job better (on Windows, I'm not talking about Macs here) than the .NET Framework. I'd love to hear what people think is the future of the framework and if it will continue to grow and consume more tiers and get a more unified development model.

tags:      

links: digg this    del.icio.us    technorati    reddit

AddThis Social Bookmark Button




1. Craig left...
Thu 28 Feb 08 11:30 pm

I can't argue with this at all, it is going to be great. I do have a concern that the framework destroys itself before ever reaching that status of "ruling them all" simply because it keeps getting expanded on. I'm not sure how that will happen but its hard to keep up with MS bringing out so many new features so quickly. I run some 200 developers and most can barely comprehend what's in asp.net and .net 2.0 never mind WPF,WCF etc and not to mention LINQ and everthing new in 3.5 - I really think we need a period of 5+ years now of "becoming good at what we have" and service packing VS rathing than bringing out new versions! :)

I'm building a new site right now in php just because I needed a break from all the "buzz" in .net ... either that or I lost another bolt :)


Tag Related Posts

Geneva Distilled

Thu 09 Apr 09 1:27 P GMT-05

WPF Control Development Unleashed

Wed 25 Mar 09 2:26 P GMT-05

What's New in Silverlight 3

Fri 20 Mar 09 2:38 P GMT-05

MIX 2009 - Day 1 Recap

Thu 19 Mar 09 2:17 P GMT-05

At MIX 2009, pre-keynote

Wed 18 Mar 09 2:50 P GMT-05

Live Framework April 2009 CTP is out!

Fri 13 Mar 09 12:11 P GMT-05

Velocity CTP3 coming up next week

Thu 12 Mar 09 4:44 P GMT-05
tags:            

My first day using Windows 7 Beta 1

Wed 25 Feb 09 1:58 P GMT-05

Microsoft Windows Azure Distilled

Tue 28 Oct 08 1:42 P GMT-05

Smart, Deep Property Notifications in CLINQ v2.0

Tue 07 Oct 08 1:15 P GMT-05
tags:          

Microsoft's Lofty Direction

Sun 05 Oct 08 2:30 P GMT-05

MobileMe vs. Live Mesh Throwdown - Round 1

Wed 16 Jul 08 10:33 A GMT-05

MobileMe vs. Live Mesh - Round 1

Wed 11 Jun 08 12:20 A GMT-05

One Framework to Rule them All

Mon 25 Feb 08 6:49 P GMT-05

Microsoft Codename Acropolis - Unwrapped

Wed 20 Jun 07 3:22 P GMT-05
tags:              

Installing Orcas Beta 1 - VMware Style

Mon 23 Apr 07 12:16 P GMT-05

Orcas Beta 1 Released

Fri 20 Apr 07 7:09 P GMT-05

My Little Pony .NET Unleashed 2007

Fri 30 Mar 07 1:59 P GMT-05

Authorness

Thu 15 Mar 07 1:44 P GMT-05

Localizing a WPF Application

Tue 22 Aug 06 11:39 A GMT-05
tags:            

Is Windows Workflow Foundation Too Complex?

Fri 18 Aug 06 12:15 P GMT-05

Tech-Ed 2006 Day 1 - Registration Day

Sun 11 Jun 06 7:17 P GMT-05

Dan Brown's got competition

Mon 05 Jun 06 3:51 P GMT-05

Lambda Lambda Lambda

Sun 21 May 06 1:01 A GMT-05

The Adventures of LINQ (Not Zelda)

Fri 19 May 06 11:21 P GMT-05
tags: