Beginner needs help.

Discussion in 'iPhone/iPad Programming' started by BigD58, Jul 21, 2008.

  1. macrumors regular

    Joined:
    Mar 31, 2008
    Location:
    North Carolina
    #1
    Okay so I have been a long time mac user and have always been passionate about apple. But now that I have my iPhone I feel that it is time to start making applications/programming for the iPhone. I am new to this and have NO IDEA :rolleyes: where to start. Any help would be appreciated. Thanks!
     
  2. macrumors 65816

    soberbrain

    Joined:
    May 9, 2008
  3. macrumors member

    Joined:
    Aug 30, 2007
    #3
    Check out the FAQ at the top of the forum:
    iPhone Developer FAQ

    Also, for recommendations on the programming part:
    Should I start with basic Mac Cocoa programming?

    And the Apple developer site (linked in the post above) is a great resource as well. In order for us to really help you better though, you might want to give us more details about your current understanding in general. Do you have any programming experience, etc?

    -Limb
     
  4. thread starter macrumors regular

    Joined:
    Mar 31, 2008
    Location:
    North Carolina
    #4
    No I don't have much experience at all. I am still in high school. I have been to the adc website before. But as I said I have little to none developing experience.
     
  5. macrumors 603

    Joined:
    Jul 29, 2003
    Location:
    Silicon Valley
    #5
    First learn at least one programming language well enough that you can solve simple and small programming problems easily. Something like Basic, Python or Javascript.

    Then after you are comfortable with the general idea of software development, you can move on to more powerful development environments such as Cocoa with Objective C, and eventually more complicated or restrictive environments for embedded devices such as the iPhone.
     
  6. macrumors 6502

    Joined:
    Apr 28, 2008
    #6
    My advice would be to resist the urge to dive right into the new hotness... It's not for beginners unfortunately :( But don't let that stop you from learning how to develop software in the meantime!
     
  7. macrumors newbie

    Joined:
    Aug 30, 2007
    #7
    I'm JUST now getting into this myself. I have a pretty decent background in PHP and Perl and wonder how complicated building apps will be?

    Hmm...
     
  8. thread starter macrumors regular

    Joined:
    Mar 31, 2008
    Location:
    North Carolina
    #8
    Thanks for the help guys I really appreciate it. But just let you know I plan on making this a career one day and not just a hobby.:D
     
  9. macrumors 6502a

    Joined:
    Mar 13, 2008
    #9
    @ soberbrain - wrong dev site. That's the mac one and Big wants the iphone one.
    http://developer.apple.com/iphone/

    @ firewood - Don't recommend BASIC!!! I come from a BASIC background, and I will be the first to say it's the last language you want to learn if you want to get into Cocoa and Objective C. Instead I'd recommend C, since it's the base of obj-C anyways. And it's a better language than BASIC.

    @ Enuratique - Reword that. Everyone has to start somewhere, so it HAS to be for beginners :p And I KNOW it's very possible to jump right into Objective C and Cocoa without knowing another language.

    @ BigD58 - I'm almost 15... so we're pretty much in the same boat. Except that I've been programming in BASIC since I was 10-11 :cool:

    Now for some useful information instead of arguing with everyone. :D
    I'm going to explain to you exactly how to get into programming for the iphone. But a warning now: It's a long, hard journey.

    1. If you haven't done so already, download the iphone SDK from the apple website. This will not only have what you need to develop for the iphone and touch, but also for macs.

    2. go to www.cocoalab.com and go through their becomeanxcoder tutorial. This tutorial assumes you have no programming knowledge. It will teach you what you need to know about C, the basics of oop (object oriented programming), how to use the developer suite (xcode, interface builder, I think a few more as well), get you started with Objective C and Cocoa, and prepare you for more advanced tutorials and books.
    *note* they have not updated the tutorial, so things will look SLIGHTLY different. The way you choose a type of file or project will look different but names will remain the same. It's not hard to figure out. Also when they say nib, the name got changed to xib. Just remember nib is xib.

    3. Buy Cocoa programming for mac OS X from bignerdranch.com. This is the beginners best friend. I wish he was a better author, but despite his slightly bad writing, it's a great book. Like the books said, it will teach you 80% of what you need to know.

    4. Use this forum, ask a lot of questions. I am always finding the people here helpful. Also find other cocoa resources online. There are quite a few. Just be careful that you find up to date ones, a lot of them are old.

    5. Subscribe to cocoacast and late night cocoa podcast podcasts.

    That's pretty much it. After becomeanxcoder, you can use cocoa programming for mac os x. Go through that, making use of your accumulating list of resources when you have problems. Do lots of experimenting. Come up with an app you want to make, and stick with it. Learn along the way. When you've mastered mac programming, you will feel great, you will have a great new skill, and you can begin on the iphone. They're pretty much identical programming wise, but in important ways they aren't.

    There's my 2 cents... have fun!
     
  10. macrumors newbie

    Joined:
    Jul 22, 2008
    #10
    Beginner tutorial

    You can also check out www.iphonesdkarticles.com.

    This site does not go into Objective-C details though.
     
  11. macrumors 603

    janey

    Joined:
    Dec 20, 2002
    Location:
    sunny los angeles
    #11
    Buy it from amazon, it's cheaper. Doh, it's an amazon link. Thought they sold the book in their own store too.

    In addition to this, ADC on iTunes videos are awesome.
    http://developer.apple.com/adconitunes
     
  12. macrumors 65816

    Dippo

    Joined:
    Sep 27, 2003
    Location:
    Charlotte, NC
    #12
    Apple has plenty of documentation!!! If you have any programming experience at all, then start here:

    Introduction to The Objective-C 2.0 Programming Language
    [PDF File]

    It is certainly more fun to just dive in and start copying and pasting code, but if you don't understand the language, you will be very limited in what you will be able to accomplish.
     
  13. macrumors member

    Joined:
    Jul 14, 2008
    #13
    I have not had a chance yet to read this but it is EXACTLY what I was looking for. Thank you.
     
  14. macrumors 6502a

    Joined:
    Mar 13, 2008
    #14
    Are you kidding me? :confused: :eek: Apple documentation is the worst thing for a beginner. I know it's not just me that is completely lost in there. Sure it's all up to date and everything that's anything is there, but it's hard to learn using it.
     
  15. macrumors 603

    Joined:
    Jul 29, 2003
    Location:
    Silicon Valley
    #15
    That's exactly why I recommend BASIC. A lot of good to great programmers started out with BASIC, and then moved on to much more powerful and safe languages. It got them interested, and did not cause them brain damage.

    The easiest path to get started, IMHO, is to learn a very simple (few keywords), concrete, and immediate programming language, and there aren't many choices that are widely popular and available. Maybe Logo? Or some Javascript to make things move on a web page? Even Python with Cocoa bindings... But it seems like 10X more programmers started with Basic than all of those others.
     
  16. macrumors 65816

    Dippo

    Joined:
    Sep 27, 2003
    Location:
    Charlotte, NC
    #16
    Yea, maybe for an absolute beginner Apple's docs aren't the best. But if you have programmed before, the docs do provide the delta training needed to get you started.
     
  17. macrumors 6502a

    Joined:
    Mar 13, 2008
    #17
    @ firewood - I know he could easily give up on programming and never make it into a career like he said he wanted to. But if he does, which is his goal, he is not going to want to have to deal with the bad habits BASIC inevitably teaches you. Things that I picked up are things I'm still trying to get past; I keep forgetting that names are not only DIFFERENT, a lot are the same names but mixed up. Here's the obstacles I can think of off hand.


    To me a function was a subroutine. That got really annoying.

    Anything that the editor highlights is a command. As it turns out, there is no such thing as "commands" in obj-c.

    not needing semicolons meant when I had to add those at the end of EVERY line gave me loads of trouble, because I'd never remember to add them in the first place, then I'd forget to see if I forgot any when debugging.

    It didn't matter where I placed a variable, all I had to do was say it's a global or local to decide that.

    The whole user-driven idea was new and weird to me. The extent that I had dealt with that was the user moving the mouse, pressing a few buttons. Nothing more.


    That's just what I can think of offhand. So I'm going to say again, in my opinion it would be much smarter to learn C. But please don't forget, that IS just my opinion. I don't know how experienced firewood is but he probably knows more about this than me.
     
  18. macrumors 6502a

    DipDog3

    Joined:
    Sep 20, 2002
    #18
    Just start with xCode and examples and start programming!
    Nothing like hands on experience.
     
  19. macrumors 6502a

    Joined:
    Apr 6, 2008
    Location:
    Downtown San Diego
    #19
    Bingo, we have a winner.

    I've been programming professionally for the past dozen years, but have been doing it on and off over the years since I was 6 years old, starting with Basic on the Vic-20 (back in 1982). Went to a top-ranked school for CS to get my degree, blah, blah....

    Simply put, there is SO MUCH TO LEARN, that if all you do is read without action, you are going to retain very little. Start with basic pre-written samples and pick them apart, modify them, figure out all the small details within reason, then move onto bigger programs/concepts.

    Whether or not someone should start with Objective-C depends on the person - on the one hand, it's fairly advanced... on the other hand, it's what you use to create software for a very cool device. The desire vs. frustration matrix needs to be weighed. Being super confused is about the best thing possible as long as you don't give up - the more you push your comfort zone in a task you take on, the quicker you learn. The faster you make mistakes, the quicker you learn.
     

Share This Page