View-based applications (view-based application)
If the application uses only one view, this template should be used. A simple view controller will manage the application's main views, while the interface layout is defined using a Interfacebuilder template (but we'll show you how to get rid of it and build the interface as you wish). Simple applications that do not use any navigational features should use this template. If your application needs to switch between multiple views, consider using a navigation-based template.
Navigation-based applications (navigation-based application)
The ideal use of navigation-based templates is for applications that hover across multiple views and thus require a way to switch between views. If you can foresee in your application that there will be a "fallback" button on some of the screens, chances are that you should use this template. The navigation controller completes all the internal work related to setting up navigation buttons and switching between view "stacks". This template provides a basic navigation controller and a root view (base layer) controller for displaying information.
Tool Application (utility application)
Applications that are suitable for widget types, which have a main view, and you can "flip" them, just like widgets in a leopard system. You may also be familiar with micro-widgets from Konfabulator (third-party tools, the predecessor of Apple's dashboard). The iphone weather and stock programs are the best examples of these tool applications. The template also includes an informational button that flips the view to show the reverse side of the application, which is often used to modify the information that is set or displayed.
OpenGL ES Application (OpenGL ES application)
If you want to create 3D games or graphics, you can use this template. It creates a well-configured view that is designed to display the GL scene, and provides an example of how the timer can be animated. OpenGL programming is not involved in this book.
tab bar application (tab bar application)
Provides a special controller that displays a button bar along the bottom of the screen. This template is for applications like ipods or phones, which display a line of labels at the bottom and provide a series of shortcuts to use the core functionality of the application.
Window-based applications (window-based application)
if the other 5 templates are not suitable for your needs, it is only a very simple template. It provides a simple application with a window. This is the minimum framework required for an application, and you can use it as a starting-up to write your own program.
Project templates in Xcode