Windows Store apps are the way to build applications for the
future Windows platforms and it start with Windows 8 operating system. If you
look at pre Windows 8 development in Microsoft world, it is VB, C# or C++ with
a combination of Windows Forms, WPF, and XAML. With new Windows Store app,
Microsoft has made sure it provide something for every discipline.
There are four language choices to build Windows Store apps depending on your expertise and needs.
- JavaScript and HTML
- C# and XAML
- C++ and XAML
- C++ and DirectX
JavaScript and HTML 5
If you’re a web developer, you may start building Windows Store app with your current skillsets of HTML, JavaScript and CSS3. Being popularity of the Web and businesses migrating from client applications to Web applications, you will see more Windows Store app being build using JavaScript and HTML 5.
If Visual Studio 2013, when you create a new Project and select JavaScript in the installed Templates, you will see 5 Windows Store app templates in the right side listing. See Figure 1.
Figure 1. JavaScript Windows Store App Templates
C# and XAML
C# (or VB.NET) with XAML is another choice to build Windows Store apps. For Windows Forms, WPF and XAML experts, it is much easier to build Windows Store apps using C# and XAML. Being a Windows programmer for over 17 years, this is my favorite choice to build Windows Store apps.
If Visual Studio 2013, when you create a new Project and select Visual C# > JavaScript in the installed Templates, you will see 6 Windows Store app templates in the right side listing. See Figure 2.
Figure 2. C# Windows Store App Templates
C++ and XAML
C++ language still dominates the programming world. There are more C++ applications and developers just behind Java and C languages. If you read the Most Popular Programming Languages article, C++ has bigger market share than C#.
If you’re a C++ developer and do not wish to learn a new language either C# or HTML/JavaScript, this is your choice. You can use your existing C++ skills to write your backend code and use XAML to build your front end screens.
C++ and DirectX
C# and HTML are not designed to create sophisticated games and game market is a huge market for apps. If you look at the top iOS and Android apps, you will see top apps are games.
If you want to build games for Windows Store, this is your choice. Also if you are a veteran DirectX developer building games, this is your area. You can start building Windows Store games using your existing C++ and DirectX skills. See Figure 3.
Figure 3. C++ Windows Store App Templates
C#/XAML vs. HTML/JavaScript
Many developers are confused on choosing between C#/XAML or HTML/JavaScript. Microsoft is dedicated to support both the technologies. Initially, they had C#/XAML but later added HTML/JS to bring web developers on board. So, decision is all yours. It all depends on your skillset. If you are good at HTML and Web, go with the HTML/JS route. If you come from a Windows background (Windows Forms, WPF) like I did, C#/XAML is the way to go. I personally love C# + XAML combo and will continue to use it.
Summary
This article summarizes different language options to build Windows Store apps.