Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Akarin

macrumors 6502
Original poster
Oct 16, 2011
290
17
Nyon, Switzerland
Hi all,

I just want to get a feel on how many of you, forum readers, are using Monotouch and what are your thoughts on it? (website here)

So far, I have been using it on and off for the past year, it has been going through many changes over time and what would typically put me off this technology is the huge lack of serious documentation & litterature about it.

For info, I'm a C# professional coder, mostly active in game development with XNA and other frameworks so when I heard there was a possibility to port my knowledge over to iOS development without the need to learn yet again a new language, I was thrilled. Unfortunately, the lack of reading material proves quite difficult to jump in it.
 
Seeing this post has been read about 300x and no answers... ...there aren't many people in here using C# to develop iOS apps :p
 
I use C# at work, and it is a really nice language. I've also been learning objective-C.

Considering the pricing of it, is it really worth it? Objective-C is not that hard, surely?

The price of MonoTouch is a fair bit, but you have to consider how much your time is worth. I'd have to work a maximum of 10 hours to have the money to afford MonoTouch, but I've spent more than 10 hours getting familiar with XCode and Objective-C. This time saving could be really useful if you're working to a deadline.

Also the app might be part of a larger system developed in .NET - and the ability to share code throughout the system might be really useful. Using both MonoTouch and Monodroid, I could use the same core libraries on iOS, Android, and Windows Phone, and then I might even be able to use these libraries on the server too.

However, I've personally decided to learn Objective-C. My goal is to learn; both the language and the frameworks, and not feel like I'm "cheating" by using MonoTouch. In the future I'd definitely consider using MonoTouch if needs be though.

For info, I'm a C# professional coder, mostly active in game development with XNA and other frameworks so when I heard there was a possibility to port my knowledge over to iOS development without the need to learn yet again a new language, I was thrilled. Unfortunately, the lack of reading material proves quite difficult to jump in it.

I've seen that the MonoTouch documentation at http://xamarin.com has been improving a lot recently, hopefully they keep it up :)

As you use XNA, you'll probably want to take a look at MonoGame http://monogame.codeplex.com/.
 
The price of MonoTouch is a fair bit, but you have to consider how much your time is worth. I'd have to work a maximum of 10 hours to have the money to afford MonoTouch, but I've spent more than 10 hours getting familiar with XCode and Objective-C. This time saving could be really useful if you're working to a deadline.

That's the thing that would push me towards Monotouch rather than Objective-C. I have a few ideas for what would make good apps (yeah, real good ones, heh) and I want to be coding right away.

Also the app might be part of a larger system developed in .NET - and the ability to share code throughout the system might be really useful. Using both MonoTouch and Monodroid, I could use the same core libraries on iOS, Android, and Windows Phone, and then I might even be able to use these libraries on the server too.

This is a second point that is really interresting to me with the whole mono project.

However, I've personally decided to learn Objective-C. My goal is to learn; both the language and the frameworks, and not feel like I'm "cheating" by using MonoTouch. In the future I'd definitely consider using MonoTouch if needs be though.

...and this is why I took a book on Objective-C which looks quite easy to get into (don't know much yet, only read the first 2 chapters). Good reviews: http://www.amazon.com/Objective-C-P...6285/ref=sr_1_1?ie=UTF8&qid=1320066861&sr=8-1

At the moment, I'm split: on one hand, I've been working a long time with C# and am fluent with it. On the other hand, I'm like Simon, wanting to learn something new and wanting to be able to know the "dedicated" language for iOS (and why not, also code some Mac apps).

I've seen that the MonoTouch documentation at http://xamarin.com has been improving a lot recently, hopefully they keep it up :)

It's a start... but nowhere near what would be needed for a 400$ licence software. So far, they show you how to make a basic UI and that's about it.

As you use XNA, you'll probably want to take a look at MonoGame http://monogame.codeplex.com/.

Yep, heard and read about that. As I am working full time with XNA stuff, I like to code other things than games from time to time ;)
 
As an Amazon Associate, MacRumors earns a commission from qualifying purchases made through links in this post.
I'd suggest you give both approaches a go, and see what you prefer.

You only have to buy MonoTouch when you want to debug the app on a device or distribute the final product.

One thing you might not like about MonoTouch is that after purchase you only get 1 year of support including updates. If you want updates after that you have to renew the support which is $249 per year.
 
C# is a very nice language. I do find it very intuitive (please don't hate me ObjC purists) and it allows me to focus on my logic rather than on troublesome syntax.

Having said that, one of the companies we do some work for has tried using Monotouch previously. It was part of Novell back then but then Novell got acquired. At that moment, all support went out the window. One of their employees had his laptop stolen and had to re-install everything. He couldn't re-install Monotouch because the license "phone-home" servers at Novell disappeared. They did not get their purchased license working until 4 months later and the support teams at Novell and Attachmate (company that acquired Novell) just ran them around in circles with legal mumbo jumbo without seemingly a care that this company had invested thousands of man hours using their paid for technology into an app with a release deadline. By the time the issue was resolved, they were long off Monotouch.

To be fair, it looks like just a couple months back everything got spun out nicely and Monotouch is being supported again.

Despite my affinity to C# as a language, I personally wouldn't touch Monotouch with a 10 foot pole because it always seems like a thin line away from being barred from the app store or the company that supports it is in a precarious position.

As much as C# programmers hate to hear this because it is such a nice language to use - learn Objective C if you want to do stuff on iOS. It really isn't that hard if your team has a solid programming background in any modern programming language.
 
Despite my affinity to C# as a language, I personally wouldn't touch Monotouch with a 10 foot pole because it always seems like a thin line away from being barred from the app store or the company that supports it is in a precarious position.

That's what I've been reading about the last few days. That plus, as Simon said, the heavy pricing, plus the serious lack of real documentation and training material finally made the choice for me: I'm head deep in Objective-C books. I truly love C# as a language (hell, on many forums Ceesharp is even my handle) but I guess it is not a viable option for iOS development.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.