DISCLAIMER: Expressed views on this blog are my own.
There are many people who look to become an iPhone programmer because of stories about becoming rich quick. Woahhh, stop right there... How are you going to program something worthwhile when you've never programmed before or finished anything possibly worthwhile. Beginning to program for the iPhone doesn't mean "Let's start on a application, just need to learn the basics," it means having an understanding of the platform and dealing with problems that will come up. Learning a language and using a language are two distinct skills like reading and writing. If anyone could program for the iPhone and become rich quick.. I should be a rich man right now! You cannot expect such a dream of becoming rich to come true unless you put the work needed into it.
You need to learn Objective-C, interesting language, and understand the nature of Cocoa Touch. Remembering the functions alone do nothing for you and besides that's why REFERENCES are created. Becoming a programmer means you need to use the references, no matter what. I have the feeling of not using references as well because I've been using a language or an SDK for some time, but sorry references are essential to any programmer. Don't believe me? Ask any knowledgeable programmer.
Developing an application requires time, skill, and patience. Why try to develop a full featured application or something out of your league as a first project? Not knowing what is being done or how to use the language in different ways leads to absolute failure. What do I mean in different ways? Know any C++? Right, maybe not. The keyword const can be used in different positions or even using macros or typedefs in a variety of ways might be essential to making your application compilable. It has happened to me before. You need time to figure out what you want to do and plan. Patience is absolutely essential to the process and you will lose interest in what you are trying to accomplish here. Developing small parts of an application is always better.
Full fledged iPhone applications go beyond the initial release, it needs to be maintained afterwards. If you are looking to release an iPhone application and expect not to maintain it, then do not expect good reviews. Actually, I do not expect your application to become anymore of a hit then it could be.
Some type of support is needed for an iPhone application. Mysterious things might happen whereas a user might want to submit a bug report, if there is no support email or web site to submit this to then why should your application be a hit of any kind? If it is a hit now, say goodbye to your spot once there is mass criticism about a bug that cripples the application. Once a bug is publicized there will be criticism and it will be on the internet likely FOREVER. You have been warned.
Technically speaking, you can do whatever you want with the iPhone, but you have to deal with the limits of the iPhone as well. With the current memory in the iPhone it takes clever programmers to figure out how to minimize memory usage of their application. You do not need to know everything there is nor should you be worried about knowing everything about a programming language, SDK, device, etc.
I do suggest Beginning iPhone Development: Exploring the iPhone SDK for Mac users. Buy it from eBay if anything. Stay commited to it and do not expect to understand everything the first time around especially if you are a newbie. I had no idea what a message or selector was, when I went through the initial part of the book, until I looked more into them. Not sure if I exactly know what they are, but I do know how to use them now.