In order to support 64-bit iOS and OSX, Xamarin has to make some breaking changes to the way it implements the mapping between C# and Objective-C libraries. Rather than being mapped to 32-bit types, NSInteger and CGFloat are now mapped to the new platform-specific data types nint and nfloat.
Xamarin.iOS now supports three development models for designing iOS user interfaces with C#: importing from XCode, drag-and-drop using Xamarin Studio, drawing in PaintCode, or purely imperative using raw C#.
Xamarin has released a preview of their async-enabled libraries for iOS and Android development. This work is based heavily on Microsoft’s .NET 4.5, which was released late last year as part of Visual Studio 2012. Xamarin is the new name for the development platforms previously known as MonoTouch and Mono for Android.
It’s been pretty quiet on the Mono front, but a few interesting things have been announced. The most notable is the adoption of .NET 4.5 for the mobile profiles and the introduction of a concurrent GC to Mono’s SGen garbage collector.
MonoTouch developers may now use Valgrind-based dynamic analysis tools on their iOS applications.
We had a chance to catch-up with Miguel de Icaza, founder of the Mono project and it’s new parent company, Xamarin. Some of the topics we covered include the future of ASP.NET MVC on Mono and the end of the Moonlight project.
When working with iOS and MonoTouch, you may find yourself needing to display data from a SQLite table. While this can be done directly by building up your own UITableViewController, the process can be quite time consuming with quite a bit of boilerplate code. Jeffrey Stedfast has found a way to reduce simple table binding to what’s basically a single method with MonoTouch.SQLite.
MonoTouch for iOS now supports the generational garbage collector SGen. Until recently this was an experimental option only available on the full version of Mono. Along with it comes a Memory Profiler for iOS that it accessible via the MonoDevelop IDE.
An ongoing problem with specialized platforms is the lack of support for unit testing. Developers are forced to compromise the quality of their tests or their build process in order to get anything working. Recently MonoTouch has made progress in this area, but Windows Phone and Mono for Android still lag behind.
MonoTouch.Dialog is a UI development toolkit designed to dramatically reduce the amount of boilerplate code needed to create application screens for the iPhone and iPad. Through the creative use of attributes, screens are dynamically built from class definitions. Alternately they can be programmatically created or loaded from a JSON document.
Xamarin, purveyors of C# compilers for Android and iOS, is looking to make mobile device code more portable by standardizing the way hardware is accessed. Their new abstraction layer, Xamarin.Mobile, allows the same code for contact, geolocation, and notifications to be used across each type of device.
The MonoDevelop team has just released version 2.8 of their open-source for IDE for .NET and Mono development. InfoQ took a moment to speak with MonoDevelop's project manager Lluis Sanchez to discuss this release and its increasing popularity on Mac and Windows.
Xamarin, the new maintainers of Mono, have released their first update to the MonoTouch platform. In addition to the bug fixes one would expect from a service release they are now supporting the System.IO.IsolatedStorage API.
Mono is back where it started. Miguel de Icaza and his developers have all legal rights to continue developing Mono and all related products due to an agreement with SUSE, now part of The Attachmate Group.
Novell Mono is officially dead. All of the developers have been let go and the new owner, Attachmate, has not expressed any interest in maintaining the project. But in true open source fashion, a new fork is rising up. Led by Mono’s founder Miguel de Icaza, a new company named Xamarin has been founded.