platform, based on ECMA 334/335 • 2001: Created to bring Windows applications to Linux • 2003: Acquired by Novell with Ximian • Matured at Novell in research mode; now a world-class runtime.
Mono team laid off • Xamarin founded 2 weeks later • Angry Mono customers pressure Novell to cooperate with Xamarin • Xamarin secures a perpetual license to all Mono IP: copyrights, patents and trademarks
Touch, iPads) What MonoTouch is not... • Silverlight for iOS devices • Compact Framework for iOS devices • iOS development without a Mac • A meta-platform
License (Requires Apple Dev License) • $999 for Enterprise License (Requires Apple Dev License Pro/Ent) • $2499 for Enterprise Priority License (Requires Apple Dev License Pro/Ent)
objects on demand • Deterministic: • Use when you need control. • Every object in MonoTouch implements IDisposable using (var image = UIImage.FromFile(“foo.png”)){ surface.DrawImage(image, 20, 20); }
Support • MonoDevelop on Windows and Mac • JIT (Just in Time compilation) • Potential to support all .NET languages • Shared Runtime for Development • APK for release includes Mono + Linked Assemblies Mono for Android
iOS MonoTouch Android Mono for Android Mono Business Logic and Middleware (engine, core and 3rd party) Native UI APIs Runtime OS Code sharing and native experience
rule them all • Common subset across all platforms • Cons • No Pre-processor Directives • No platform specific-code • Limited API set - no System.Xml.Linq or System.Net.WebClient