Learning and Knownledge about Metro Style Apps

Few weeks ago, I started developing a real and professional Metro Style App using either C# XAML and C++ XAML. The fact is that because Visual Studio 11 and Windows 8 are only Beta or Alpha releases, there are some bugs in the API but it is not a problem. The XAML editor is really interesting because it is not slow.. It seems the WPF nightmare is out of this stuff or the Team has rewritten a lot of things (I choose the last option). Based on Spy++ and ildasm checks, there are a lot of different ways that differs from VS10 to VS11. The XAML technology could be nightmare for C++ developers who rely on legacy Windows API. Resource editor was easier than XAML/XML language but the mixed pane Editor / XML view has to be learned to be convenient to use. Visual Studio 11 is in my opinion a killer app from the perspective of multiple technologies audience it embraces. C++ is always the best language to write professional apps but the Windows 8 paradigm will welcome as a charm, all the C#, VB and JS developers. Even if every thing is native (XAML controls, WinRT, etc), the view for C#/VB and JS programmers is really attractive. Just build your software the way you want. Stay with your way and just use the wrappers that are shipped with the tools. All the code from VS10 / Windows7 works on my machine. For quick learning and sample explorations, I have done C# XAML prototypes but the C++ XAML is more attractive. I can reuse a lot of my existing code… So the final application (put on the Store) will be a native applications, build for ARM, x86 and x64. The C# version is only for learning purpose…

On the C++ side, there is not so many damages in migrating from legacy UI Windows platform to UI Metro Style App because C++ applications ; modern ones ; have a separation between the UI handlers, the business code and the technical plumbing code – a real and composition/aggregation technique usage that make apps alive for multiple generations of tools & OS. It might not be true for standard .NET applications because things go faster in this land. In C++, we think about software development in another way. C++ developers think for long-term code, not only for a dedicated platform or IDE & compilation tools version. C++ is portable and runs on several OS and can use several UI frameworks so C++ software makers known how to be depend or not of a dedicated piece of software. C++ guys know how to handle portability and compilation or some software components with GCC on the Linux platform for example. C++ is back and now the UI layer provided via XAML technology is one way to stay on the edge. C++ rocks !

Leave a comment