One Developer’s Choice of Xamarin for Cross-Platform App Development

When I began building mobile apps, the only option was to use the JavaScript framework. Back then, it wasn’t really stable and frankly I’ve never loved JavaScript, then or now. Then I saw that you could build apps with C# (“C-sharp”) because Xamarin Studio (IDE) enables code completion and sharing in C#.

That’s why back in 2013 I sought to learn Xamarin and its applications.

Today I offer another of our Team Insights to talk about the tremendous potential of Xamarin app development.

The advantages of Xamarin for mobile app development

As I started with Xamarin, I found it very useful from a developer perspective, and still do today. Why?

Instead of building an app first for iOS and then one for Android, native app design has become the gold standard. Xamarin offers a native user interface and native performance monitoring, and it allows you to access device-specific features, but then it enables easy code sharing. This makes for a much faster mobile app development lifecycle.

There are two approaches to build an application with Xamarin. First, you can use it with iOS and Android and the other is using Xamarin.Forms. I choose Forms because it gives the developer the opportunity to share more code and be more productive. Larger companies have apps build with Xamarin Android and Xamarin iOS, but that’s because when they began five years ago it wasn’t that stable. Now it is definitely the safe, stable, and reliable way to go.

Xamarin has awesome support, continuously contributing to the Xamarin Component Store. Built right into Xamarin’s Visual Studio extensions, I can choose from many free or paid components, like UI controls, cross-platform libraries and third-part web services. Each of these extensions is just a few lines of code, which keeps in line with Code4Nord’s commitment to cleaner code.

Xamarin was bought by Microsoft in 2016 in order to extend Visual Studio to work with Android and iOS apps too. This acquisition was create for our team because it fits nicely with our team at Code4Nord’s Microsoft Technologies specialisation. Microsoft open-sourced the Xamarin SDK through the .Net Foundation and bundled it as a free enterprise suite feature.

For better developer experience, Visual Studio allows us write and deploy Xamarin on a Mac or PC, allowing devs to work with the tools they want.

I stick with Xamarin because it allows me to create native apps that are more beautiful, flexible, and with a better UI and user interaction.

In my experience, Xamarin makes for easier cross-platform app deployment and easier incremental upgrades. I may have been working with Xamarin for six years, but I’ve stuck with it because it’s the right choice for stable, forward-thinking app development.

What can you do with Xamarin?

I’ve gotten to build numerous Xamarin mobile apps, for both work and home.

The first one I built was actually an education app for my daughter to learn her multiplication table. All the apps in Google Play were multiple choice, and I wanted an open-ended one. My Android app actually has an intelligent algorithm that focusses on the questions the child knows less, in order to improve the speed of learning.

I created both an iOS app and an Android app which display statistical data for our home-country of Romania in a user-friendly manner. It also pulls data from the National Institute of Statistics and compares data for each of our 41 counties and regions. By using Xamarin, I was able to reuse at least 90 percent of the code between both apps.

One app I’ve created as part of a software development team is Teamlinkr, which is the first truly community rugby app. It connects amateur sports by acting as a link between athletes, parents, coaches, clubs, and the community as a whole. It includes scheduling, communication, and live-streaming capabilities.

I also created an investment funds app that I cannot share here, but it featured indicators so you could adjust and make decisions of whether or not you want to invest. It has a very visual user experience, pulling data from different sources and combining it into easy-to-understand graphs, tables and red and green flags.

Since joining Code4Nord, I’ve worked mainly on building point-of-sale (POS), inventory and loyalty applications. (You can read more about that here.) I often also develop the application backend and the mobile apps which expose data and let the user interact with other systems.

Although this piece focusses on mobile app development, I also work with desktop applications, adapting code that links the mobile app and the point of sale software together. This involved integrating a new version that allowed new features to integrate and changing our code to fit with the mobile code.

I always look forward to using Xamarin. I like programming and Xamarin is just a tool to do what I like, and it’s a tool to build applications that I think are useful for others.

But Xamarin is only one of the languages, tooling and frameworks we use at Code4Nord. So we will share more Team Insights another time.

Please add in the comments if you have other aspects of Xamarin app development you’d like to share. We’d love to hear it!

Previous post Next post

Integrating electronic identification and signing into a project

Read More

Why and how to update Microsoft .NET Framework to the latest version

Read More