What benefits Xamarin Android developers outside of plain Android?

Hey everyone,

Ever thought about what the differences are from Xamarin Android outside of just plain Android?

Honestly, the differences are very marginal.

You still have these classes and interfaces that you can write. You still have all these pure and impure functions as well.

I’ve known that Java has been an OOP paradigm for years. They are now introducing functional programming, but I’m not sure it is yet supported in Android, though Kotlin might already be doing that.

In Xamarin Android with C#, you can do that almost out of the box.

It forces you to think differently. You might be familiar with doing something on plain Android already, however, Xamarin Android provides more flexibility and cleverness with its own ways of doing things.

For example, with the .NET library, you can pass in a function as an argument and also return something from it. That’s pretty nice.

Java 8 as I remembered had problems with older Android SDKs, therefore doing the above is probably useless. In the .NET world, it’s fine just writing something not too specific to the SDKs, and just making an operation.

Now this is not to say Xamarin is the be-all, end-all solution. The platform also has some shortcomings, especially if the codebase gets very large. It takes longer to compile and deploy, and if your app crashes somewhere then you’ll have to start over. All developers know that this isn’t exactly fun stuff, though this also happens with pure Android as well.

Anyhow, Xamarin Android developers can also benefit from how other platforms’ codes are written. Therefore, want to learn iOS? Just load up the project, and have a look at the code! You’ll see that the skeleton is pretty much the same, but the meat is different.

However, if you’re the type that just wants to think for one platform, that’s fine to do for now. However, this is how one should think for oneself:

Until next time!

Brian.