How to make an application from an idea (iOS 4)

At the beginning of this topic we talked about turning great idea in to a killer application. How do you do it? Let’s walk through the general steps to help make your dreams come true.

The checklist

There are several ways to build a universal application running on both the iPhone and iPad. Let’s start with a handy checklist. (If you’ve already installed the Xcode and iOS SDK as demonstrated earlier in this topic, you’ve finished half of the task.)

1 Join Apple’s iOS Developer Program (US$ 99/year will give you access to submit applications to the App Store).

2 Have access to an Intel-based Mac computer with Mac OS X 10.6 or above.

3 Get a good book for beginners (this topic, for example).

4 Get a test device: iPhone, iPod touch, or iPad. It will be mainly for testing during application development. If you’re on a tight budget and don’t already own one of these devices, you don’t have to purchase one. There are test device services that provide rental equipment.

5 Get a sketchbook for the UI design, or make use of UI mocking software such as that from Balsamiq.

That’s it! The last step is to learn Objective-C by reading this topic and build your application with the iOS SDK. With this goal in mind, let’s move on to the application concept.

What’s the category for your application?

Knowing the category your application fits into will help you make a better estimate of how difficult it will be to build, which will help you plan your release date. Let’s review the most common app categories.


GAMES AND ENTERTAINMENT

This category is hot and crowded. It’s super competitive to create a successful application under games or entertainment. A game or entertainment application generally is heavy on media. As a developer, you should consider working with a UI designer in order to take advantage of the awesome graphic display quality of the iPhone and iPad.

Generally speaking, a game application may combine the use of the accelerometer, drawing and animations, audio, and Game Kit. Once you’re familiar with the iOS SDK basics, you can jump to later topics that will cover the iOS frameworks in detail. Topic 15 provides complete coverage of game application development.

The difficulty level for a developer of game applications is higher compared to other categories. Fortunately, the rich UI tools on iOS provide a decent, fast prototyping environment for game developers.

RICH CONTENT APPLICATIONS

Rich content applications are commonly data oriented—for instance, a Twitter application. To allow user access data from the cloud, rich content applications provide organized data on the client side.

On the iPhone, the challenge of this rich content application is the limited screen real estate. The key to success, therefore, is in presenting the user with a good amount of well-organized data.

On the iPad, the focus is to provide rich content on one screen.With a detail-oriented UI design, you can add plenty of realism to your application. For example, the page-flipping animation in an iBook application allows users to flip through a digital book as if it were a traditional paper book.

This type of application needs to download data from the server and then store the data locally. Topics 8 and 9 provide a great introduction on how to store data locally on the iPhone and iPad. Topic 14 demos how to fetch data through Internet protocols on iOS.

NAVIGATION AND TRAVEL APPLICATIONS

This category makes more sense on the iPhone compared to the iPad. With its built-in GPS and compass, the iPhone can be used to provide the user’s current location on the fly.

If you’re thinking about presenting Map View on the screen, don’t miss out on topic 18, which covers the details on iOS’s Map Kit framework.

With the combination of an accelerometer, GPS chip, and camera, you can build an augmented reality navigation application with iOS’s hardware framework access. iOS frameworks for these hardware accesses can be found in this topic.

UTILITY APPLICATIONS

The key to a successful utility application is to keep it simple. Make sure your application will focus on one major task and stick with it. The calculator application on iPhone is a good example. For a beginner, this is a relatively easy category. Moreover, it fits the needs for the creative idea or the niche market. With the knowledge acquired in the first seven topics of this topic, you’ll be able to create a decent utility application.

Next, we’ll cover the business model for the iOS platform.

Making money with your application

Generally speaking, there are three ways to generate profit on the iOS platform:

■ Submit a paid application. You can price your application at the level you’re happy with; the current price tier allowed on the App Store is from US$0.99 to US$999.99 (there are similar pricing tiers for each App Store market in local currencies). It should be mentioned that you have a 30% profit share with Apple.

■ Submit a free application with in-app purchase. You can use Store Kit on iOS to generate profit through an in-app purchase. For details, please refer to topic 19. You share 30% of all revenue through in-app purchases with Apple.

■ Submit a free application supported by advertisements. This is a common business model for free applications. Follow the step-by-step instructions on iAd from topic 20; you’ll be able to make money with your application in no time.

You don’t have to build an application for profit. Simply creating a cool application and learning a new programming technique is fun and rewarding in itself. The bottom line is if you’re planning to distribute your application through the App Store, make sure you read and follow the application guidelines from the iOS Developer Center.

Finally, stay focused and don’t give up! Learning a new programming language isn’t easy. Try listing the key features for your application, and focus on the most important ones throughout the development process. Unless you have unlimited resources, it will be hard to put all the features you want inside one application. And even if you manage to, it may be too hard for users to figure out how to use your app. Remember: sometimes less is more.

Summary

In this topic, we first explored iOS on the iPhone and iPad, and then we explained how to install the iOS SDK on your Mac. We also covered the anatomy of iOS, including objects, classes, and methods, providing the backdrop for coding in Objective-C, which follows in the next topic. With the program environment ready, you can start the journey with iOS development.

Next post:

Previous post: