I have been working recently on a Xamarin.iOS application for managing events. One of the application’s interesting and challenging features is the way it displays multiple lists of events with the help of some relatively advanced, but intuitive UI. This is what the homepage of the app looks like:
One of the fundamental mantras of software development is DRY – “Don’t repeat yourself”. It’s an important rule, because it allows us to save both space and time. Instead of rewriting a non-trivial algorithm, we use a method call, instead of correcting bugs in multiple places, we do it only in one. Would you ever not follow DRY? Well… yes, when you need to develop a mobile app. If your plan is to get as many customers as possible, releasing an iOS and Android version is a must. This means maintaining two very similar codebases. Can we do better? The answer is yes and it’s called Xamarin. It’s the platform we’re using for some of our newest projects at Trifork, and I would like to share with you our experiences, likes and dislikes. Read on if you’re not afraid to abandon Xcode and Objective C.