Monotouch for cross platform mobile apps

6 views
Skip to first unread message

Tyler White

unread,
Feb 8, 2012, 9:23:54 PM2/8/12
to dis...@sfcomplex.org
Anybody using or have heard of Monotouch for making iOS apps? http://xamarin.com/monotouch. You write in C# and it all compiles out into Obj-C (or Java for Android and whatever language windows phones use). Apparently you can also mix and match libraries from C#,C, and Obj-C so you don't loose out on all the good frameworks. It might be a good option for those of us who want to get into mobile but don't want to commit to a specific platform. Also if you're already fluent with C# it's like you've been gifted with superpowers. I can't vouch for the quality or complexity that compiled apps can produce. I just heard about this at a coding dojo in Argentina. Sounds like another cross platform option like HTML5 apps.

Sent from my iPhone 4

Marcus G. Daniels

unread,
Feb 8, 2012, 10:22:44 PM2/8/12
to dis...@sfcomplex.org
On 2/8/2012 7:23 PM, Tyler White wrote:
> You write in C# and it all compiles out into Obj-C (or Java for Android and whatever language windows phones use).
I've used Mono, but not MonoTouch. My read is that MonoTouch adds
Objective C runtime support to a special CLR-like (.NET) profile which
is natively compiled. Which is to say it is not a source to source
compiler, but that the MonoTouch runtime library can send and receive
messages to/from Objective-C land. (That doesn't require any compiler
support.) For Android, it says it is managed code, which means there
is Mono virtual machine (with just-in-time compiler, etc).

In principle, MonoTouch can also facilitate use of advanced programming
languages like F#.
Performance might be a reason to use MonoTouch over HTML5, but the
comparisons I've run between the latest JavaScript JITs and Mono's JIT
are in the same ballpark (and closing in on Java). I think the main
benefit of Mono is to benefit from static typing, relatively evolved
libraries from the .NET world and the multi-language capability. Mono
and .NET are actually ECMA standards, in spite of the hostile reception
Mono often received from the open source Linux developer community.

Marcus

Reply all
Reply to author
Forward
0 new messages