It was just a few hours ago that Xamarin release Xamarin 3. With this announcement they have yet again revolutionized the way we write cross-platform mobile applications.
The announcement first highlights the Designer for iOS, which is awesome, but I want to take a step forward, and instead talk about what I think Xamarin.Forms will do for your future mobile development efforts.
Some background: For the last few months my company worked and developed an internal MVVM framework that provides services such as Navigation, Bindings, Loosely-coupled messaging, mobile optimized Dependency Injection, List Controls for effortless displaying data, etc. to be used in our projects because we believe these are things that real apps need, and what was available at the time did not fit our style of MVVM development, so we rolled our own. Were were in the process of rolling out support for Windows Phone and were very excited to what we would be able to accomplish with this newly created framework when creating apps for all 3 platforms.
While you might think that today's announcement would be annoying, or bittersweet to us, it is quite the contrary. We no longer have to maintain and evolve our framework, and instead we can focus on applying all we learned while creating this -yet to be named- framework, and instead extend (if needed) what Xamarin has just rolled out.
|Sample UI on all 3 Platforms.|
"That's not something new" - You might say; and I would have to agree with you. MVVMCross (the most well known mvvm framework in the Xamarin ecosystem) does that. But where Xamarin.Forms has no comparison is, in that it attempts (and in my mind succeeds) to bring XAML one step closer to being in all the mobile platforms (Something Microsoft just recently started doing).
XAML in itself is might not sound like a big win for seasoned iOS and Android developers, but think for a moment in the millions of developers who are already familiar with Microsoft technologies and UI creating in WPF, Silverlight and WP8. These guys already are already familiar with constructs such as Page Based UIs, Navigation Services, Two-way Bindings, Data Templates, etc.
I invite you not just to believe me, and go try it yourself. The framework is already available today and let me know how awesome it it!!