Xamarin is not a good candidate for phone apps
A few days ago an acquaintance pass me an article about Xamarin as the new best candidate for phone apps. Sorry, but I’ve never laughed more in my life. He compered it with Phonegap (Cordova) telling me that it’s more powerfull… but the real thing is that it’s not and I’m going to tell you just some couple of good reasons.
- Xamarin only supports iOS, Android and Windows phone plataforms whereas Cordova supports iOs, Android, Windows, Amazon Fire OS, Backberry, Ubuntu, Firefox OS, LG webOS, etc.
- You have to pay to use Xamarin and it’s not Opensource whereas Cordova is Opensource and free.
- Xamarin doesn’t support Web Standards whereas Cordova supports Web Standards.
- Both have access to the device API.
- Xamarin uses it’s own native interface whereas Cordova uses Web UI which is the most widespread.
- Neither of both have a full native performance for all the platforms.
- Xamarin uses C# whereas Cordova uses HTML5, CSS and JavaScript.
However, the real comparison would be with Qt which uses C++ (a compiled language) but even Qt is better, more mature, more tested, opensource and free, and with even more supported platforms.
So, if you want to lose your time and make things go slower, feel free to use Xamarin. I think at the end some people are as blind with Technologies and Brands as they are with Politics and Religions. You can’t argue with them because they don’t like the proofs and the truth (they feel like you were attacking their physical integrity) or maybe you are a C# programmer who doesn’t want to learn new technologies in your life (more reasonable).
And why not use Qt? Well, I’ve been developing with Qt since 2007, when I was at the University (before tablets, phones and wearables boom). Qt is really heavy, complex, with a steep learning curve if you want to create awesome interfaces. One of the best things was its access to the device API (cross platform) but Web Technologies have caught it up.
We advance to make easier, open and powerful apps. I know, it’s hard to forget what you’ve learned but you have to deal with it because at the end you will thank yourself.