iPhone Programming 101, part Four: Designing your app
0A guest post by Mike Smithwick, author of Distant Suns 2 for the iPhone/iPad and blogger at distantsuns.com. Mike is a seasoned iPhone/iPad developer who has developed numerous iPhone applications. He has recently released Distant Suns for iPad and written numerous articles for iPhoneness.com. Follow Mike’s work on Twitter for more information.
So now you know a little about the toolset and the language Objective-C. Trouble is, that is just the beginning. It is as if you have a hammer, a saw, the book “House Building for Dummies,” and maybe even an idea of what you want the final house to look like, while facing an empty lot. And as Robert Redford’s character said at the end of the film, The Candidate upon winning a hotly contested election: “Now what?”
Designing a major piece of software such as a billing system for an airline, or Kill All Humans-3D is a non-trivial thing to do. A large game can cost as much as a movie these days, require dozens of artists and engineers, and take years to complete if at all (See Duke Nukem-Forever). Thankfully the iPhone with a smaller screen and limited input has “lowered the bar” to entry when it comes to games or most any other kind of software. That’s not to say that iPhone apps are cheesy when compared to the PS3, but in the iPhone world, writing a compelling application might only take one or two guys and a kitchen table. This is not at all unlike the excitement that surrounded the early days of home computing software when someone could bang out a fun and profitable game or utility for the Apple II in only a couple of months.
The first thing to do is to figure out why you want to do an iPhone application in the first place. To become fabulously wealthy overnight is not the best reason, as most applications may generate only enough each week to buy a bag of M&Ms. A small bag. The runaway hits such as Ocarina are very few and far between. For every Angry Birds there are thousands of iBeer knockoffs.
But if you want to do an app just to learn programming, and to show off to a few friends, now we’re talking. Programming is a fascinating discipline particularly if you are a detailed-oriented type who can work alone. However, if you are the president of the local Toastmasters, maybe not. Read the rest…