What is the hardest part about learning a new programming language? I’ve often argued that learning a new language is easy, it’s learning a new framework is can be time consuming.
In case you’ve been living under a rock lately, you probably already know that Windows 8 Metro style apps can be built with Xaml & C#. This means that .NET & Silverlight developers can leverage their existing skillset to easily build Win8 Metro Xaml style apps. But just how similar is Silverlight to WinRT?
In an effort to get some real numbers, I created a program to iterate over all the default assemblies included WinRT and compare with those found in Silverlight 5. Here’s what I found:
Of those 1,582 matching types, here is a look at the members (properties, method, & events) they have in common:
Comparison details for those interested:
- I included all Silverlight 5 assemblies installed as part of the SDK. Other assemblies such as RIA services and the Silverlight Toolkit were not included.
- The public Silverlight 5 RC was used. IMO it is highly unlikely any numbers will change once the final version is released.
- Differences in namespaces, type accessibility, and base classes were still counted as a match. For example, I ignored differences such as a type being sealed or implementing ISerializable.
- Similar liberties were taken with members.
- Property get & set methods and event add & remove methods were not counted as unique members.
My key takeaways:
- WinRT includes a ton of new types. Some of these are certainly for new features such as the marketplace, accelerometer support, …etc. Time to start learning!
- Approximately 1/4 of the types in Silverlight are not present in WinRT. Some of these are no longer relevant like the types associated with the DOM bridge or Out of Browser support.
- When comparing just the shared types, SL5 starts to look very close to an actual subset of WinRT. This is good news for Silverlight developers because it means most of your existing code should easily port.
Coming soon: I also have a side-by-side comparison of the entire WinRT and SL5 API so you can explore each and every difference in their respective APIs. Check back soon.
Update: Detail now available, here’s a complete comparison of every single public API in WinRT and Silverlight 5 and where they match.
[…] Comments « The WinRT Genome Project […]
[…] Read original post by Tim Greenfield at Programmer Payback […]
Do you try to compare WinRT with WPF? Mabye they are closer?
Or compare WP7 and WinRT…i’d love to see the overlap (especially where it comes to hardware APIs)/
nicely done!!! It clearly shows that Silverlight got it’s genes into WinRT.
Has anyone tried to port a large SL LOB project to 8 and how difficult is that going to be to do?
[…] Greenfield, a Silverlight Insider, has compared the WinRT API with Silverlight’s, to see how similar or different they are and how easy would be for a developer to make the […]
[…] Read original post by Tim Greenfield at Programmer Payback […]
[…] point est une lecture sur InfoQ (un de mes sites informatiques préférés), qui renvoyait sur une page extrêmement intéressante, avec une analyse des types communs entre WinRT et Silverlight […]
[…] my mind on this is a reading from InfoQ (one of my favorite IT sites), that linked to another extremely interesting webpage containing an analysis of common types between WinRT and Silverlight […]
[…] From what is already visible, it is very likely that Silverlight and WinRT are going to have great overlap. The combination of XAML, C# and WinRT plus the tooling will be very familiar to all Silverlight users. That means, it is likely that the asynchronous programming model will be the predominant model for client/server communication for Windows Metro style apps. In order to simplify this, C#5.0 is going to include the await/async keywords, that will make callback chaining obsolete. […]
[…] tun wird. Leider ist die Schnittmenge zwischen Silverlight und WinRT sehr klein. Siehe z.B. hier: https://programmerpayback.com/2011/11…enome-project/ Es gibt mit WinRT auch keine CLR mehr und daher auch keine IL, wie sie auch Silverlight nutzt. […]
[…] https://programmerpayback.com/2011/11/17/the-winrt-genome-project/ […]
[…] The verticals for XNA in WinRT imply Silverlight […]
That’s exactly cocrert the position I’ve taken in many a discussion that inevitably ends up as a religious jihad against me by the GNUs. We don’t need apps, we have the cloud, the GIMP is just as good as Photoshop, Microsoft is finished Blah blah blah Red Hat is showing how it works for servers and technical workstations, and Google is showing how you can do it with mobiles (Debian on a phone? Don’t make me laugh )Linux (as you know) does have that eccentric billionaire, who is trying very hard to create that ecosystem, while at the same time seemingly running as fast as he can away from the name Linux .(Google doesn’t really highlight the fact that Android is built on a Linux kernel either, for what it’s worth maybe Google and Canonical figure it is a good idea to distance themselves from the geekfest?)Even if you suddenly *could* have everything you wanted on a Linux desktop, would you move? I’m not sure the answer is yes for me it isn’t like Windows or OS X is that expensive, and both have practical levels of stability and security compared with Linux as far as I am concerned.This is no doubt why there hasn’t been a huge push by OEMs to put Linux on our machines, at least where you and I live the cost for the licence is so marginal that there is no price sensitivity.
Their services are valuable to you simply because they take the guess work out of the training
and nutrition your body needs to be healthy for life. For
a speedy withdrawal of fat, avoid all “white” carbohydrates such as bread, pasta, cereal and potatoes.
Sunlight on un-protected skin produces a highly usable form of Vitamin D that lasts twice as long in your bloodstream as when
you consume it through food or a supplement, but you still need caution
due to the risk of skin cancer.
Euɦh êtes vous certain de cе que vous nous аvancez ??
Est-il possiƅle dde emprunter quelques paragraphes ѕur un site web
?
It’s actually a nice and useful piece of information. I am satisfied that
you shared this useful information with us.
Please keep us up to date like this. Thanks for sharing.
I am actually happy to read this webpage posts which connsists of lots of
valuable information, thanks for providing these data.