Today I’m going to submit my second Monotouch app to the Appstore. Time to write down some reflections and try to further raise enthusiasm for Monotouch by providing some links.
- Apple does accept Monotouch apps in the store, look here for a catalog and showcase .
- The default tool for building iOs app is Apple’s Xcode. Most resources on iOS devlopment are in xCode’s objective C. The Monotouch architecture closely mirrors Xcode, read the Rosetta stone to translate member names.
But Monotouch is more than just another dialect. IMHO and experience the C# language and the .net class library do have unique things to offer. To name some:
- Lists. Unlike C# for Windows.net Lists are a wrapper for arrays. Using (typed) lists does lead to far clearer code.
- Lambda’s and linq. Objective C (Xcode) does have delegate’s but misses the elegance of lambda’s.
- XML. Both XmlDocument and Xpath work very well (and fast) in Monotouch. The way to go when doing interop.
These are my favorite Monotouch sites
- Shrinkrays. Formerly known as sloppycode.net. A huge variety of articles and snippets. My favorite ones are on a code based approach to views and controllers on the iPhone. Most articles on the web guide you through the MonoDevelop wizards to start an app. Which leads to the world of interface builder and xib’s. The approach presented here focuses on the plain C# code behind and a surprisingly easy way to build a complete app from plain C#. I am working on a more elaborate post which builds on these ideas.
- Conceptdev (Craig Dunn’s blog) More than just MonoTouch stuff. Craig has also worked on the DeepEarth project and in his most recent posts he is covering Windows Phone 7. Great source to put things in perspective.
- Infoq. These are more traditional basic articles. The quality is great, I keep using the one on tables again and again.