Windows Phone Development vs Android Development Tutorial for Beginners

Posted by Tushar Bedekar


As we all are familiar with the smartphones today covering the era of today's world.As basically there are three platforms :-

  • Windows Phone
  • Android Phone
  • IOS (Apple Phones)
Each of the platform are equally good in certain perspectives and in other some a days there is big competition between them. so lets discuss about different points about windows and android phones. 

1.Development Tools:

Android: Android app development is done mostly in Java (in a few cases with C or C++),Declarative screen design in Android is represented in an XML file which gets injected into the corresponding activity code at run time

Windows Phone: Windows phone apps support C++, C#, Microsoft Visual Basic .NET, and JavaScript.Declarative screen design in Windows Phone is represented in Extensible Application Markup Language (XAML).. XAML is a declarative language, with each XML node representing a Windows Runtime object.

The first question that concerns every developer during his first steps is “how easy is it to start developping on a platform”. Assuming that you already are a windows user, things are quite easy. You have to download the SDK and the Visual Studio Express (a striped down version of the standard Visual Studio) and you are ready to start. Of course the same stands for Android too, you download eclipse, the eclipse plugin and the Android SDK and again, you are set to go. Both platforms have rich documentation but Android has an advantage to online communities like StackOverflow and mailing lists. The problems begins when you are a linux or a mac user like myself. Eclipse and the Android SDK run on all operating systems and versions, while Visual Studio runs only on Windows Vista and later. The solution of using a virtual machine is rather disappointing.

Windows Phone
Company/ Developer
Programmed in
Mostly Java (in a few cases with C or C++)
C#, VB.NET,Java Script
(C++ is not supported officially)
RunTime OS 
Windows Phone
Initial release
September 23, 2008
October 21, 2010
Supported platforms
ARM, MIPS, x86, I.MX
Default user interface
Graphical (Multi-touch)
Graphical (Metro UI)
Android SDK
Windows Phone SDK
Source model
Open source software
Android Developers Tools(ADT) plugin for eclipse
Visual Studio Templates and Blend for Visual Studio.
Development OS
Windows,Mac, and Linux FlavorsBest to work with Windows 
Language support
Multiple language support
Multiple language support

2.Layout Controls:

Layout Controls
Windows Phone 7Android Equivalent

3.Basic Controls:

Basic Controls
Windows Phone 8.1Android Equivalent

4.UI Development:

You have your tools set up, now you must start the development. Both platforms are using XML to construct the UI of an application. In fact the similarities are quite suspicious.

WindowsPhone: Windows Phone offers a great drag and drop tool and the UI creation is a straight-forward procedure.
Android: Things are a little bit more complicated on Android. There is a basic drag and drop tool, but it doesn’t do a lot of things (it can’t really), designing the UI for so many different types of Android screen sizes and shapes is -despite the tools and the good documentation- more complicated than having to support a limited and documented set of screens.

5.UI Guidelines:

Another important issue is the design guideline. 

WindowsPhone: Microsoft came with the Metro UI. I find it so attractive, and many of my friends who work on the design industry find it splendid, so I have to trust their taste.

Android: What concerns me most is that the design guidelines for Android are constantly changing (can you find anything similar between Android 1 and the Holo theme? I can’t!), you have to redesign your app often (this can be a good thing too) but I believe the Metro UI has come to stay and we won’t see any dramatic changes to the UI or the UX of the Windows Phone applications in the near future.

6.Which programming language is best?

Google made the decision to use Java as the programming language of Android to attract many Java developers. Microsoft did exactly the same, only they used C#. Cloning the good elements and coming to fix Java’s weaknesses, offering extra functionality, C# is a more modern programming language and this is a point for Windows Phone. Do not forget the power of the jars though, as the majority of Java’s extra libraries are very likely to work on Android and this is a big issue if you just think of the Apache Commons’ set of libraries. (I do not want to go deeper into programming language performance war since, let’s face it, testing execution speed of these languages on a 600mhz mobile device has little value). Memory consumption on the other side is a big thing, but Garbage Collectors on both languages do a very good job and it’s up to you to use the phone’s memory conservatively.


WindowsPhone: Speaking of emulators, Windows Phones have a big advantage here. Strangely enough (!), the Android emulator’s speed hasn’t improved over the years and is still tremendously slow. (Yes, years have passed since version 1). Windows Phone emulator works like a charm and starts at the speed of light compared to the Android emulator.

Android: Strangely enough (again) eclipse’s Android plugin and toolset is very buggy and lacks of many features. Also, many developers state that Visual Studio is a much more stable and mature IDE than eclipse, but I’m afraid I’m not in a position to confirm that :)

8.Development Cost:

And here comes another thing: cost. Not counting the cost of the operating system, since you have already paid for it

WindowsPhone: Windows Phone development has extra costs. if you want to publish an application or deploy your app on your device ,You have to pay for the full version of Visual Studio and you have to pay an annual fee (99$) which is now reduce to (19$) only due to summer offer .Good news are that if you are a student, some of these costs are withdrawn. 

Android: Android on the other hand, is significantly cheaper. You only need to pay 25$ once, and that is if you want to publish your apps on the Play store. Oh, I forgot, Android headsets are also cheaper, if you want to buy a real device!


WindowsPhone: Windows tablet does not run Windows Phone OS but it runs under windowsRT. windowsRT is a "light" version of Windows 8 that is dedicated for tablets. It does not run .exe files but only Windows store applications. But there is the Surface Pro which runs Windows 8 and .exe files. I should mention that 80% of Windows phone APIs are from windows8 APIs. So you can easily share your code between Windows Phone and Windows 8.

Note: Now WindowsPhone store 8.1 Development environment support more in common—a much larger API set, a similar app model and life cycle, a shared toolset, a common UI framework—Windows Phone and Windows Store app developer platforms truly have become one, single development platform.

Android: Android runs on smartphones, also on tablets. From the 3.0 version, Google added a bunch of APIs for larger screens so that apps will be more funny on tablet the mains components added were ActionBar and Fragments.

10.App Store Submission Process:

WindowsPhone: In order to publish windowsphone applications,There are two kinds of accounts: a developer account which will cost you 49$ and an Enterprise account which will cost you 99$(Present 19$ only due to summer special and it may be forever).The validation process will be very strict and take you about maximum 5 days and if your app is rejected, you will get an error report about what you have to change in your don't have malwares in the Windows Phone Marketplace. It's a trusted store!
For more info you may read How to submit windows phone 8 app to windows phone marketplace

Android: In order to publish Android applications, you need to have a Google Play account,that will cost you 25 USD,you have to pass through a validation process which takes only 15 to 30 minutes.Google play has a lot of malwares, that's because of the very fast validation process and the huge number of Android developers.

Note: This post is does not pointing to which platform is winner,but as a developer it is best practices to know about both platform's environment  before going to develop apps.You can still discuss with me in the "Comments " section below.

1 comment:

back to top