Mac developer on developing for the iPhone
If you’re a Mac developer looking forward to the release of the iPhone Software Development Kit with a glee usually reserved for Christmas mornings, then you might want to temper that enthusiasm just a wee bit. Developing for the iPhone, as it turns out, won’t be quite like developing for the Mac, though they do share some underlying similarities.
Take it from one who knows: namely, Iconfactory programmer Craig Hockenberry, the fellow responsible for Twitterrific. Craig’s penned some thoughts on what it’s like developing for the iphone, given his experience trying to hack out a native version of Twitterrific.
Don’t expect to reuse much of your existing code. If you’re using a standard MVC design (which is pretty much inescapable if you’re using Cocoa) then about 2/3rds of the application will require major rework.Heed his words, children! He knows wherefore of he speaks. It’s a worthwhile read for anybody who’s interested in developing for the iPhone. Which, come on, is all of you.From my experience, your models and the infrastructure that support them can be reused without much effort. On the other hand, the multi-touch interface obviates the need for your existing views and controllers.
ABOUT iPHONE CENTRAL
Get the latest news, reviews, and opinion about Apple's groundbreaking iPhone from the Apple experts at Macworld.
Want more information? Be sure to check out our complete iPhone coverage.
iPHONE VERSION
Our site's pretty iPhone friendly. But if you'd like to test an iPhone-app-like version of our site, click here and give it a go.
MACWORLD'S iPHONE REVIEW
How does the iPhone stack up? Read our in-depth review.
iPHONE QUESTIONS OR COMMENTS?
Send your iPhone thoughts:
via e-mail
via voicemail
and we may use them on the site.
RECENT COMMENTS 
- Michael Appel on Vodafone can count to ten
- robin on Flaky IMAP may suck iPhone's battery life
- Rafael Borges on iPhone bound for Latin America
- Dave on iPhone SDK beta five is alive
- Julian on Flaky IMAP may suck iPhone's battery life
- Dave T on All the news that's fit to read on your iPhone
- Ray on Flaky IMAP may suck iPhone's battery life
- DistortedLoop on All the news that's fit to read on your iPhone
- Jean Alexis on Rematch of the, er, month: iPhone vs. BlackBerry, round two
- Gerard on iPhone headphone surgery
CATEGORIES
- Accessories (39)
- AT&T (40)
- Hacking (31)
- Hardware (25)
- Musings (100)
- News (198)
- Reader Experiences (4)
- Reviews (51)
- Software (136)
- Tips & Troubleshooting (77)
- Videos (9)
- Wi-Fi (15)
BLOG ARCHIVE
- May 2008 (12)
- April 2008 (34)
- March 2008 (33)
- February 2008 (50)
- January 2008 (34)
- December 2007 (33)
- November 2007 (42)
- October 2007 (45)
- September 2007 (53)
- August 2007 (67)
- July 2007 (111)
- June 2007 (82)

Comments (2)
Unless Hockenberry is breaking a NDA and knows the final SDK is going to be exactly like programming on a jailbroken iPhone, isn't it a little early to be saying what it's going to entail? I would expect Apple to make something like Xcode's Interface Builder for the iPhone so programmers don't have to reinvent the wheel each time through code.
Apple's toolchain is definitely going to be more elegant than what's available now.
Posted by Dave | February 14, 2008 11:41 AM
While I'm sure he's talking about developing for Jailbroken phones, I can't imagine that it would somehow be different.
What he's saying makes sense and is generally correct. The idea behind porting apps designed via MVC is that the model is where the work is done and is portable. The view presents your interface and should not be portable (because you should be designing for the interface) and the parts of the controller that deal with the interface will not be transportable either.
Again, though, the important point to consider is that an iPhone is not Mac OS X. Figuring you're going to take your Mac OS X app and recompile it for the iPhone is not something your customers will appreciate. Much as I don't want some Windows app ported to Mac OS X, I don't want some Mac OS X app ported to iPhone. Instead, I'd rather buy an application where someone has actually put some thought into the differences between the two platforms and designed an interface which takes advantage of that.
Posted by Peter | February 14, 2008 1:22 PM