RadChart for Windows 8 WinRT – A Prelude

Thursday, September 29, 2011 by Georgi Atanasov | Comments 10
This is part one of the RadChart for WinRT blog series. For more information please refer to the other parts of the series:
Part two - The Compilation
Part three - Taking its First Breath

 

Now that the early bits of WinRT – the new Windows 8 development platform are out, we (at Telerik) are eager to explore this whole new world that awaits us - the opportunities it offers and the challenges to be faced. I would like to elaborate a bit more on how we feel about this new world. We are strong believers that a programming language is only a tool used for solving software problems and challenges. The software industry is evolving and so are all the related tools – including programing languages and IDEs. The more the tools become the better the chances will be for good applications to appear. Some software problems are best solved in a certain language while others in another programming language. Therefore, being a polyglot programmer enables you to find the most accurate and efficient solution when you are given certain requirements. If a brand new language was introduced with WnRT we would not be scared – on the contrary, we would embrace it knowing that it will enhance our knowledge and proficiency. This is not the case anyway. C# and XAML are in the core of WinRT and this fact implies that the overall learning curve should not be expensive – I know, that’s just in theory. But what about existing technologies/tools? Are they really "dead" (whatever this means) or this is just a hysteria spread by scared people who see their current expertise not applicable? Vassil Terziev has an excellent post explaining our vision for Silverlight and .NET and the all-new Metro/WinRT world.

Back to our challenge - entering the new WinRT environment. There is no argument that the best way to explore a new platform is to create a fresh and new project and start digging into the platform’s internals. But how about existing projects? What is the actual cost of porting them to WinRT? Is everything from Silverlight and WPF covered? If not, what are the options? The best candidate for such a test, out of a broad range of XAML products, is RadChart for Windows Phone. As I outlined in this blog post, the chart is divided into two almost completely independent layers and the connection between them is only a very thin interface. The logical layer is completely UI-agnostic and all it needs to compile is C# and mscorlib.dll. The UI layer is also very thin and uses only basic Silverlight visuals such as Canvas, Line, Polyline, Path, Border, Rectangle, etc.

We chose a project and took a shot. As expected, the entire process finished in about two days and almost without a hitch, except for some annoying issues that were most probably due to the early version of the framework. I will write series of blog posts that provide step-by-step details about the migration and what we were mostly fighting with.

Yes, there are some differences compared to Silverlight and WPF but hey, it is C# and XAML and all our expertise in these can be easily spread over WinRT. And no doubt we will be there for you, Metro-ready, providing the same high quality tools and components when you start building your immersive applications.

Stay tuned for more Windows 8 posts to come.

10 Comments

  • Patrice 29 Sep 2011
    Do you plan to make a preview version of theses controls available for developers ?
  • @paulovila 29 Sep 2011
    How the RadRbbon  and the RadDock controls work with touch?
  • Georgi Atanasov 10 Oct 2011
    Hi guys,
    @Patrice Yes, we will make the demo available for download so that you can experiment for yourself.
    @paulovila Ribbon and Dock controls represent the standard Desktop UI and do not fit with the Metro paradigm. Nevertheless we will investigate the new opportunities and what may be actually used in Metro applications.
  • Alba Paz 16 Oct 2011

    > ... "all it needs to compile is C# and mscorlib.dll"

    Does this mean that you'll want to write/convert components in C# (managed code) for WinRT ?
    I thought that the best way to create fast (native) components for WinRT is C++/XAML, not C#/XAML, which is more suited for applications that use them.

     

  • Georgi Atanasov 17 Oct 2011
    @Alba Paz Thanks for your interesting comment. No doubt C++ would be the fastest possible solution - of course if written well. C# however has many built-in goodies missing in the native C++ language. It actually depends on the scenario and the component - C#, if used efficiently, can be performing closely to C++.
  • Russell Carter 18 Oct 2011
    So can your controls be run from C++/XAML, or do they require C#/XAML ?
  • Georgi Atanasov 18 Oct 2011
    @Russel:
    In order to use the chart assembly in a C++/Java Script project, the assembly's Output Type should be WinMD (Windows Runtime Metadata). Actually we have not compiled the chart library as a valid WinMD component yet but this should not be a problem. Otherwise you can create native components in your preferred language: http://msdn.microsoft.com/en-us/library/windows/apps/br230301%28v=vs.85%29.aspx
  • Thomas Schmidt 23 Nov 2011
    @Georgi:
    I've got a question which is very important for us:
    Do you think the "Telerik ORM" offline container could run in an WinRT environment one day ?
    As far as I know it didn't work with the core CLR of Silverlight. (One of the reasons why we didn't start any Silverlight-projects)
  • Dimitar Kapitanov 23 Nov 2011
    @Thomas Schmidt:
    We consider the offline container part of our 'classic API', therefore if the container should work under WinRT or any other platform, say like Mono, it should undergo significant redesign. At the moment we don't have such efforts in our plans.
  • Jordan 08 Mar 2012
    Do you have plans to make the RadChart available for Metro Style apps?

Add comment

  1. Formatting options
       
     
     
     
     
       
  2. (optional, emails won't be shown on public pages)
  3. (optional)