It is a powerful development platform for creating rich media applications for
the web, desktop and mobile devices. It is a new cross-browser, cross-platform
implementation of the .Net Framework for building and developing the next
generation of media experiences and Rich Interactive Application for the web
users to provide a dynamic experience by using all stuffs like animation, audio,
video etc. It runs in all popular/modern browsers like Internet Explorer,
Firefox, Safari, Google Chrome running on Microsoft Windows, Mac OS. The very
small plug-in requires to run Silverlight and it is freely available on
internet.
Silverlight is combination of different technologies into a single development
platform that allows us to select tools and the programming language to use in
development. Silverlight can also be integrated into existing ASP.NET,
JavaScript or AJAX code to complete the functionality.
The main aim of Silverlight is to compete with Adobe product 'Flash' and the
presentation components of AJAX. Website designers and developers alike can find
much to be excited about in Microsoft's answer to Adobe Flash.
At very first time Silverlight was called by very bored name 'WPF/E' (Windows
Presentation Foundation/Everywhere). After the MIX (MIX is a Microsoft
conference held annually for web developers and designers at which Microsoft
showcases upcoming web technologies) conference in March 2007, a new name
'Silverlight' introduced.
The main advantage of Microsoft's platform, developer's has option to choose his
development language. The same in Silverlight, developer can chose either VB.NET
or C#.NET to develop Silverlight based apps.
Versions of Silverlight
Silverlight 1
Silverlight1 was the very first version after the MIX conference. Version 1 was
released in September 2007. This version was made up of the following
components:
- UI Core: Managing the rendering of
bitmap, jpeg, vector graphics, text and animations.
- Media: Audio support like mp3, wma,
wmv7, wmv8 and wmv9/vc-1
- Input: Handling input from
keyboard, mouse etc
- XAML: Pronounced as "Zammel", to
allow the UI creating using XAML markups
Silverlight 1.1 (also referred as
Silverlight2)
When version 1.1 was released in October 2007, it was rebranded (renamed) as
version 2. In addition with many updates in this version, Silverlight 2 includes
Deep Zoom technology. This technology allows users to zoom into, or out of, an
image with smooth transitions using the mouse wheel.
Silverlight 3
This version was introduced in early 2009 and the final version was released in
9 July 2009.
Silverlight 4
On November 18, 2009 at the Professional Developers Conference, Microsoft
introduced beta version of Silverlight4 and the final version was released on
April 15, 2010. New features in this version include:
- Support for Google's Chrome browser.
- Web cam and microphone support.
- Printing support.
- Improved mouse support including right
button support and mouse wheel support.
- New notification support to display
messages to end users.
- New and enhanced controls such as a
RichTextBox and an enhanced DataGrid control.
- New support for implicit theaming of
controls.
- New hosted browser support for rendering
HTML inside Silverlight.
- WCF data layer enhancements.
- Localization enhancements with
bi-directional text.
- Support for Managed Extensibility
Framework.
- Enhanced data binding support.
- Enhanced animation effects.
- Clipboard and drag and drop support.
- Deep Zoom performance enhancements.
- WCF Rich Internet application (RIA)
Services.
Silverlight 5
On December 2, 2010 at the Silverlight Firestarter event, the beta version of
Silverlight5 was announced for release in 2011. New features will be available
with this version includes
- Supports GPU accelerated video decoding
- Built in 3D graphics support (not to be
confused with stereoscopic 3D)
- Variable speed playback of media content
with automatic audio pitch correction
- Improved power awareness
- Built in Remote-control support
- Supports faster application startup
- Provides 64-bit browser support
- Automated UI testing support for
applications with Visual Studio 2010
- Delivers improved text clarity
- Developers can now debug data-binding
expressions, set breakpoints on bindings.
How to run Silverlight in browsers?
As I already have discussed above, Silverlight is an add-on to browsers, as does
Adobe Flash. It gets installed separately to browsers and adds functionality to
our browser to display web page and let us some new technology experience. This
add-on itself is around 6MB in size.
To run Silverlight applications, we need a compatible web browser. When we point
any website which has Silverlight content, we get a small Install Microsoft
Silverlight Icon as given below:
Now to install this, click on above icon to download and install. Alternatively,
we can download newest version of Silverlight add-on from website
http://www.silverlight.net/GetStarted.
We can also update the existing installed add-on by navigating right clicking on
any Silverlight based website and navigating to updates option. Alternatively,
we can download newest version of Silverlight add-on from website http://www.silverlight.net/GetStarted
and re-install it.
Trying some Demos of Silverlight
By navigating on community website for Silverlight, we can find many demos
developed by third party developers or even many demos directly from Microsoft.
Find the following demos:
Demos by Microsoft
http://www.silverlight.net/showcase/
Silverlight enhanced website
http://memorabilia.hardrock.com/
Silverlight enhanced website
http://cookingwithxaml.com/meals/financials/
Above example brings up an interactive graphics. Creating a rich user interface
for any application such as above would be very difficult using plain coding.
Advantages of Silverlight
- Supports Data Binding
- Supports Drawing of vector graphics and 3D
transformations
- Supports for creating storyboards and
animations
- Supports for using text boxes and buttons
and even creating own controls
- Layout Support
- Controls styling
- Change appearance of controls
- Supports video and audio share via webcams
and microphone
- Supports media streaming
- Supports to create applications for
windows and symbian based mobile phones
What do we need to develop Silverlight?
Microsoft provides all the programs needed to develop Silverlight applications.
Expression Blend (Expression Studio includes Expression Blend, Expression
Design, Expression Web, Expression Encoder etc.) and Visual Studio are the most
commonly and primary requirement. However, to start developing applications in
Silverlight 4, we need to install following programs and tools:
- Expression Blend 4 (It is available in
trail only, no any free edition)
- Visual Studio 2010 (Visual Web Developer
2010 is free)
- Silverlight 4 Tools for Visual Studio 2010
(Freely available)
This software is responsible to add necessary
elements to get Visual Studio to build Silverlight applications, these elements
includes project templates, button & text boxes and the most important one
Silverlight SDK (Software Development Kit). It also offer debugger support.
- Silverlight Toolkit (Freely available)
This includes the collection of controls and
utilities for Silverlight that supplements what is already present in the core
Silverlight libraries. This toolkit also includes controls such as charts.
Microsoft frequently updates this toolkit.
- Deep Zoom Composer (Freely available)
This helps in creating the zooming and panning
effects of images at runtime.
- WCF RIA Services (Freely available)
This focuses on the user interface
implementation, validating data, calculation, data reading and writing etc.
Above all tools and software is subject of change and updated information and
download links can be obtained always from
http://www.silverlight.net.
Role of Expression Blend
As we already have discussed that Expression Blend is part of a suite of
applications collectively known as Expression Studio. Although we can install
just a single application as need, but specially designers tend to install the
entire suite of the Expression Studio. These tools help the designer to design
art visually. Other applications in this suite are follows:
Expression Design
This application let the designer to design graphics and artworks for desktop
and web.
Expression Web
This application let the designer and developer to design, build and manage
entire website. It also supports CSS in creation of websites even it integrates
with ASP.NET and PHP level programming. Its Super Preview option let the
developer see how page will look in different browsers.
Expression Encoder
This application let the designer to prepare the media files such as video and
audio so that they can be used with Silverlight application.