tags:

views:

436

answers:

7

i want to learn how to develop apps for iphone but i have no programming experience. Do I need to know code or can I learn as I go with the iphone sdk and learning objective c?

fras

+1  A: 

I think this really depends on how good you are at picking up things...

My advice would be to actually learn at least one programming language before you try to tackle objective C.

Any Object-Oriented programming language would be a start.

James
thanks james,i pick things up pretty quickly.how long would it take me to learn a language, say java or c#?what language would you see as being the most useful?
If you are looking to go into Objective C afterwards...I would probably suggest starting with C/C++ rather than Java/C# as you will need to learn quite low level techniques such as memory management/pointers etc. That is not to say learning Java/C# is a bad idea!...my preferred language is C# :) I don't think I could give you an answer on how long it would take you, I am sure once you start learning you'll get a better idea. You don't need to learn a language inside out, just enough to achieve what it is your looking to do :)
James
+12  A: 

If one needed programming experience to start programming there would be no programmers. You can gain experience, but you shouldn't expect iphone app development to be any less of development than other platforms.

Michael Krelin - hacker
Very well said, Sir.
Alterlife
Thank you, Sir.
Michael Krelin - hacker
+1  A: 

objective c is "code". So yes, you have to know code.

Antoine Claval
A: 

No, you don`t. You just need some knowlege. I assume, some basic OOP knowledge and some knowledge of basic libs would be enough to get started. Try some tutorials.

folone
A: 

I think you'd be jumping in at the deep end a little. Objective C (and Iphone programming) requires knowledge of things such as memory management and pointers that you find in lower level languages such as C, along with some of the abstractions that come with high level object orientated languages, such as Java.

That said if you don't mind a steep learning curve there's no reason you couldn't jump straight in with Objective C. However if time isn't an issue, a gentler learning curve might be to first learn C, then something like Java or C#, before finally jumping in to Objective C.

Tom
I'd say it's safe to go from `C` to `Objective C`, because that's what history suggests. In the order of appearance: `C` — early 70s, `Objective C` — mid-80s, `Java` — mid-90s.
Michael Krelin - hacker
A: 

Yes you can learn to develop, if you have some knowledge on basic programming. Try to create a sample applcation and run it.

easwar
+1  A: 

Hi,

I have started on a similar journey not in the first instance as a business but rather out of personal interest / have a hobby which challenges some grey matter!

I started out by gaining an interest through content management systems and frameworks such as Drupal which is based in PHP.

I have now worked through a few books in C and wished I started here rather than PHP tutorials as C is a more structured language and seems to give you good foundations in other languages. Here are the main books I can't recommend enough for what you may wish to achieve.

  1. Kernighan and Ritchie - The C Programming Language

  2. Learn C on the Mac (Apress Publishing)

  3. Objective-C on the Mac (Appress Publishing)

  4. The iphone developers cookbook

  5. Beginning Iphone Development (Apress Publishing)

  6. If you are a more visual learner or a really starting from the beginning and need a lighter yet informative book then there is also 'Headfirst' Iphone Development series but its not ot till mid Oct.

There is also a highly recommended book on Cocoa Touch as well which will help you become more familar with developing for Apple products.

All the reading however needs to have in parallel lots of doing, so do seek out puzzles, practice tests, code snippets which you can freely tinker with, as you may understand the manuals, but its knowing how to approach the problems yourself which will help you learn the most.

Most importantly, you can do whatever you want to do, so long as it is fulfilling and makes you happy. Best of luck!