Feeds

Microsoft nails Silverlight's future to Windows Phones

From three screens to one

5 things you didn’t know about cloud backup

PDC 2010 Microsoft is making it easier to write Silverlight apps for Windows Phones.

In the first half of 2011, Microsoft will deliver the Portable Library Project, which lets Silverlight programmers deploy apps for as many different types of devices as possible. It was released as a preview on Thursday.

The idea is to offer a single version of Silverlight than runs the same code across multiple devices – rather than build separate PC, browser, and phone versions of the platform.

On the PC and in the browser, Silverlight has officially given way to HTML5. But it is now Microsoft's official platform for building Windows Phone applications.

The problem is that Silverlight contains APIs that weren't necessarily built for phones, and there's no easy way for coders to work around this. Shawn Burke, a .NET developer director, promised PDC attendees on Thursday that the Portable Library Project "lets you avoid lowest common denominator syndrome, and lets you target a device in a natural way."

Burke was speaking during a session that was originally billed as a Silverlight talk, but at some point, it was re-named "three-screen coding: sharing code between Windows Phone, Silverlight, and .NET."

Before PDC, it was clear there was a political fight inside Microsoft over whether its strategy for web-based rich-media should favor Silverlight or HTML5. Silverlight was the star of last year's PDC. But since then, HTML5 has caught on, thanks in large part to the backing it received from Apple chief executive Steve Jobs.

During his Thursday keynote, Microsoft chief executive Steve Ballmer made it clear: HTML5 is the future strategy. The only mention of Silverlight was as a development environment and a runtime platform for Windows Phone 7.

Speaking later that day, Burke said the inspiration for the Portable Library Project was that people want to run their Silverlight applications on Windows Phone 7 - which uses parts of Silverlight 3 and 4.

But today, if you build a Silverlight app for the browser or the PC, it won't run unchanged on a Windows 7 Phone. That's because Silverlight contains APIs for the PC and the browser that just don't make sense on the phone - such as system.windows.browser and the Windows DOM APIs.

But if you take these APIs out of the Silverlight runtime, you deprecate the player, and fragmentation sets in.

Code portability has a mixed industry track record. You might get portability in JavaScript, for example, but you still need to know which browser you're targeting.

Some developers opt for assembly portability, targeting a small subset of system libraries to share business logic, validation code, file and protocol processors, and serialization. The project generates a common DLL and reference assemblies - sets of metadata used by the Intellisense feature in Visual Studio and during compilation of the app.

To make this happen, Burke's team devised something called a "portable core" that narrows the APIs that show up in Intellisense and uses reference assemblies to show what APIs work across selected the platforms.

The portable core contains a set of APIs that are common for Silverlight on a phone, browser, and PC - like string.compare. In the first release of Portable Library Project, you will get APIs for Basic BCL, Basic HTTP, and System.XML - what Burke called a starting point

Gone are APIs that are device-specific and not needed in the phone. So, there's no system.windows.browser or DOM APIs. Reflection.emit – an advanced feature for the dynamic creation of new types at runtime - has been removed because this doesn't work with the .NET Compact Framework on the phone. Serialization has been removed because Window Phone 7 can't do serialization. There's no file path. And there's no the Windows Communication Foundation, .NET Managed Extensibility Framework, or system.windows UI.

The goal is to add new functionality areas and expand the amount of portable code available in the core – and to let you target different types of devices. ®

Secure remote control for conventional and virtual desktops

More from The Register

next story
Why has the web gone to hell? Market chaos and HUMAN NATURE
Tim Berners-Lee isn't happy, but we should be
Linux turns 23 and Linus Torvalds celebrates as only he can
No, not with swearing, but by controlling the release cycle
Apple promises to lift Curse of the Drained iPhone 5 Battery
Have you tried turning it off and...? Never mind, here's a replacement
Sin COS to tan Windows? Chinese operating system to debut in autumn – report
Development alliance working on desktop, mobe software
Eat up Martha! Microsoft slings handwriting recog into OneNote on Android
Freehand input on non-Windows kit for the first time
This is how I set about making a fortune with my own startup
Would you leave your well-paid job to chase your dream?
(Not so) Instagram now: Time-shifting Hyperlapse iPhone tool unleashed
Photos app now able to shoot fast-moving videos
prev story

Whitepapers

A new approach to endpoint data protection
What is the best way to ensure comprehensive visibility, management, and control of information on both company-owned and employee-owned devices?
Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Maximize storage efficiency across the enterprise
The HP StoreOnce backup solution offers highly flexible, centrally managed, and highly efficient data protection for any enterprise.
How modern custom applications can spur business growth
Learn how to create, deploy and manage custom applications without consuming or expanding the need for scarce, expensive IT resources.
Next gen security for virtualised datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.