Building a great Windows 8 app Step 4: Pick your programming language

What’s the best programming language for your Windows 8 app? .NET, JavaScript with HTML/Canvas, or C++?

This blog is part of a series, you can see the rest of the series here.

If you want to develop for Windows 8, you need to decide which programming model best suits your needs and skills and find some resources to help you get started with your chosen model. Don’t forget in Canada, any app you publish before end of March 2013 can earn you rewards through the Developer Movement, and students building apps can enter them in Imagine Cup!

Let’s look at options for different types of developers:

Are you a web developer?

Are you a game developer?

Are you a .NET developer?

Are you a Java developer?

Are you a C++ developer?

Are you an iOS developer?

Are you an Android developer?

Are you a web developer?

Websites have been built with HTML, CSS and JavaScript for years. In the past few years the trend has been towards HTML5. Microsoft started to enter the HTML5 world with Internet Explorer 9. IE9 added a lot of support to HTML5 features, and IE10 took it even further. Windows 8 continues the trend of supporting HTML5. If you haven’t explored it yet, HTML5 is more than just new markup tags like <video> and <audio> it includes improvements to CSS (like media queries to handle different screen sizes) and updates to JavaScript. HTML5 has been gaining in popularity in the web space because it does not require any plug ins and every year more HTML5 features are being supported by more browsers. So if you are already developing websites with HTML and JavaScript take what you know and apply it to Windows 8 app development.

Are you a game developer?

There are a number of options for game development on Windows 8, what makes sense for you depends on your existing game experience and the complexity of the game you plan to build.

C++

I would not recommend C++ and DirectX for a beginner programmer, but, when it comes to high performance games, serious gamers turn to C++ and DirectX. With DirectX and C++ you can build great games for Windows 8. To get started, check out the Developing Games for Windows 8 or Developing apps with C++ and DirectX (scroll down to the section Game Programming in C++.)

Do you prefer a 3rd party tool which generates the code for you?

There are a lot of companies out there who produce tools for beginner and experienced game developers. These products have their own development environments and generate the application code for you. Some of these tools are free, some charge you either for the development environment tools, or to publish the apps. To get started check out cross platform tools that support Windows 8