InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

MonoTouch Has Added Support for Apple’s iPad

Posted by Abel Avram on Jan 29, 2010

Sections
Development,
Architecture & Design
Topics
.NET ,
Mobile
Tags
iPad ,
Mono ,
iPhone ,
MonoDevelop ,
MonoTouch

Within 24 hours of the announcement of the new iPad tablet from Apple, the MonoTouch team has released MonoTouch 1.9 (alpha), which is focused on helping developers to write .NET application for the iPad.

The iPad is the long-awaited tablet computer from Apple which aims to fill a gap between small mobile devices (e.g. mobile phones) and laptops. With the visual appearance of a scaled-up iPod Touch, the iPad is close to a netbook with an important difference: there is no external mouse or keyboard, the input being done exclusively though multi-touch; this means clicks, double-clicks and right-clicks become taps, pinches and twirls.

Developing Mono-based applications for iPad has similar requirements as developing for iPhone: MonoTouch using the iPhone SDK which includes support for iPad. It is important to note that, while theoretically one could develop iPad applications on Windows or Linux, in practice a Mac OS X Leopard or Snow Leopard system is necessary because the iPad Simulator (a hardware emulator) and Interface Builder (a visual tool for building the UI) currently only run on Macs. Also, Apple forced the MonoTouch team to install MonoTouch only if the iPhone SDK is present on the computer. That means developers are limited to the Mac closed environment. The complete set of requirements are:

  • An Intel Mac Computer Running Mac OS X 10.5 or 10.6
  • Apple’s iPhone SDK 3.2
  • The latest Mono
  • MonoTouch 1.9 Alpha
  • MonoDevelop 2.2.1 (This is not mandatory, but is very helpful)

The iPhone SDK does not support creating applications both for the iPhone and iPad in the same time, but it is likely such support will be added later and it will be made available in MonoTouch as well.

Limitations that apply to iPhone development (and therefore which apply to iPad development too) include limited generics support, no dynamic code generation due to lack of support from iPhone OS, no remoting, no COM bindings and no JIT. MonoTouch contains many basic assemblies but none related to the client interface, so Silverlight, WPF or WinForms can’t be used to create the interface. The Interface Builder based on Apple’s Cocoa Touch should be used instead.

The InfoQ article MonoTouch: .NET Development for the iPhone can be used as a guideline for developing for iPad since they are both using the same iPhone SDK.

No comments

Watch Thread Reply

Educational Content

New-age Transactional Systems - Not Your Grandpa's OLTP

John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.

Cool Code

Kevlin Henney examines code samples to see what can be learned from them starting from the premise that one won’t write great code unless he knows how to read it.

Collaboration: At the Extremities of Extreme

Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.

Yesod Web Framework

Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).

Transactions without Transactions

Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.

Attila Szegedi on JVM and GC Performance Tuning at Twitter

Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.

10 tips on how to prevent business value risk

One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.

Interview: Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives

InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.