Vivek Thakur

Chaotically Complex

  Home  |   Contact  |   Syndication    |   Login
  102 Posts | 1 Stories | 316 Comments | 66 Trackbacks

News



Archives

ASP.NET Ventures


There is a lot of  technical jargon as well as tool names floating around on the net when one tries to search for silverlight. So I thought of writing a very basic introduction covering Silverlight, WPF/E, Expression Blend, Expression Web, Exprression studio, .NET 3.0 WPF etc. Since I got some good experience buildng a nice Silverlight based website I wanted to share my knowledge so that beginners can get a good introduction to the basics. These all keywords can cause a lot of confusion to a new developer setting foot in the silverlight area for the first time.

The story started with .NET framework 3.0 (formerly known as WinFX). The newer version introduced a lot of new features (hence a major jump in version number from 2.0 to 3.0) like WPF, WCF etc. You can learn more about .NET 3.0 features searching google, but all of these were simply wrappers around the old 2.0 framework. In a nutshell, the core of 3.0 is still the same as .NET 2.0, with these wrappers like WPF added on it. There were no breaking changes and your .NET 2.0 applications will run fine in 3.0 too.  The core framework class library is same. I would let this article talk more about general 3.0 framework as it is a good introduction on 3.0 is here: http://msdn2.microsoft.com/en-us/library/aa480198.aspx

.NET 3. introduced XAML,  which is Extensible application markup language. XAML is the foundation of the GUI in .NET 3.0 and above. Why XAML you might ask? For me, i understood is like this:

When I first started programming in VB6, i got used to developing using RAD (Rapid Application Development), i.e. using ready made controls to develop a nice looking GUI, which of course windows based. Textboxes, datadrids etc were so easy to use and program, and customizable too. But having to type everything in HTML was killing, add no debugging support to it...

Later over the years when I moved to my first web based project in ASP, I didnt like it at all. It was like my hands were cut! While creating simple forms, I would still look for the Toolbox, hoping to drag and drop items on my asp form :-(

ASP.NET was a welcome relief, we could use toolbox just like old VB6 days, and debug our code too. One thing caught my eye while learning ASP.NET: how did it happen? How could the broswer interpret ASP.NET contols so easily? I realized that these server controls emit HTML, and the ASP.NET engine can parse ASPX HTML code, get hold of the server controls and render them as their HTML equivalents. Nice, sharp, and jazzy!

Slowly I started to "hate" VB6 or windows based programming, suddenly I felt that windows based apps are like monolithic blocks, only being able to run on 'thick clients", and the idea of  putting controls in HTML format sounds nice. Atleast one could more finely control the output, instead of using some stupid windows control which could not render anywhere except on a windows machine. Best thing was the fact that one could modify the applications GUI with only changing the markup without re-compiling the code. I did not like the idea of developing an app with that dependency, thin clients and web programming was what I loved!

With the introduction of XAML, MS blurred the line between Windows and Web apps. Now with WPF, even windows app had a markup language like HTML, which is XAML. Such was the power and likeablity of web based programming model that the concept of "anywhere, everywhere" was the main reason for XAML. Silverlight is based on this XAML only, for web based GUI  development.

Now back to Silverlight (or WPF/E: Windows Presentation Foundation/Everywhere) here, which is a revolutionary new way to design interfaces, for both web and windows applications. You can do everything with Silverlight (SL) which you can do with FLASH (not everything exactly because there are some desing effects which havent been incorporated into SL yet, like advanced animation effects). Best thing about SL is that an ASP.NET developer can learn it fast, whereas FLASH action script is kinda tough and flash coders are different from ASP.NET coders. This is really good news to all developers who wanted to control and *debug* their advanced user interfaces more finely.

To program in Silverlight you need to develop its SDK, which is a free download. To see SL based applications running on your brower, you need to just download the plugin for it (silmilar to what we do for FLASH ie install its plugin).

As of now, VS 2008 beta 2 can be used to develop SL based apps, it has nice IDE supporting JS intellisense. But one can start development using SL in VS 2005, using this template:

http://weblogs.asp.net/mschwarz/archive/2007/06/04/silverlight-with-visual-studio-net-2005.aspx

Expressions of the developer

Expression Suite is a set f products which a designer or a developer can use to create GUI.

Expression studio has these following tools in its portfolio:

1.       Expression Design

2.       Expression Blend

3.       Expression Web

4.       Expression Media

Think of the product suite in Expression Studio like standard designing tools (Photoshop etc) with extra features interact with your .NET projects using XAML.

 

posted on Saturday, November 10, 2007 10:35 PM

Feedback

# re: SilverLight and Expression products intorduction for newbiews 1/30/2008 4:04 PM SwissSteve
I am still a little confused on the tools issues.

I am a WinForms Developer learning WPF for use on fat client applications. I use Visual Studio .NET for the development and Expression Blend for the visuals.

Now I want to update my Web Site which is a Microsoft Personal Web Site template. Naturally I would like to bring it up to the latest technology so I guess this is Silverlight.

What I dont see is the connection between Expression Web, Expression Blend, VS 2008 and Silverlight. What is the recommended toolset?

# re: SilverLight and Expression products intorduction for newbiews 2/22/2008 1:10 PM Krivahn
Can silverlight be used in windows applications ?

# re: SilverLight and Expression products intorduction for newbiews 2/22/2008 1:15 PM Vivek
Yes, pre-launch code name of Silverlight was WPF/E, that is Windows Presenation Foundation Everywhere, whether its windows or web!!

Post Feedback

Title:
Name:
Email: (never displayed)
Url:
Comments: 
Please add 6 and 7 and type the answer here: