PDA

View Full Version : Where to start with learning Objective-C?




Creative3
Jul 7, 2010, 03:48 PM
I know macs inside and out but don't have any experience with programming. I have a few app ideas fluttering around in my head and thought, maybe i should try to create one. I want to learn the Objective-C code since it's what you use to create the app and pretty much want to know the quickest, easiest and best way to learn it to get me started on the app creation. Thank You



robbieduncan
Jul 7, 2010, 03:51 PM
Did you read the sticky thread (http://forums.macrumors.com/showthread.php?t=518968) at the top of this very forum?

dejo
Jul 7, 2010, 04:17 PM
...and pretty much want to know the quickest, easiest and best way to learn it to get me started on the app creation.
Quick. Easy. Best. Pick two. :D

robbieduncan
Jul 7, 2010, 04:20 PM
Quick. Easy. Best. Pick two. :D

I very much doubt that a quick way or an easy way will end up being the best way. Quick and Easy sure. Or Best.

dejo
Jul 7, 2010, 04:25 PM
I very much doubt that a quick way or an easy way will end up being the best way. Quick and Easy sure. Or Best.
Yeah, sorry. I think by trying to be too cheeky (and maintaining the ol' "pick two" adage), I ended up sacrificing my point.

Creative3
Jul 7, 2010, 04:41 PM
Fine. Then whats the best way to do it so I could make a strong app. and if i make an app it would be a game or entertainment type. I don't really want to buy any books also, maybe just online. Thank You

TuffLuffJimmy
Jul 7, 2010, 04:43 PM
Fine. Then whats the best way to do it so I could make a strong app. and if i make an app it would be a game or entertainment type. I don't really want to buy any books also, maybe just online. Thank You

The best way? Go to school for it and get taught by people in the business.

robbieduncan
Jul 7, 2010, 04:44 PM
Fine. Then whats the best way to do it so I could make a strong app. and if i make an app it would be a game or entertainment type. I don't really want to buy any books also, maybe just online. Thank You

Did you read the sticky thread I linked to yet? It covers suggested routes. In short:

1) Learn C.
2) Learn Objective-C
3) Learn Cocoa-Touch
4) Build some very simple basic apps.
5) Once you are comfortable with the frameworks start planning (pencil and paper) the app you really want to build
6) If you want to do 3D graphics learn OpenGL-ES
7) Plan some more
8) Finally start writing the app

Cromulent
Jul 7, 2010, 05:37 PM
Teach Yourself Programming in Ten Years (http://norvig.com/21-days.html).

Creative3
Jul 9, 2010, 03:20 PM
I haven't really gotten a straight answer yet. I downloaded the Programming in Objective C book by Kochan which is actually a real help but it's really long. In the last day I've learned how to send objects commands, memorized a lot of the language with integers and what not. Just want a basic guide. And the app I would want to build is a game/building app if that helps you with anything and thank you for a reply.

Cromulent
Jul 10, 2010, 11:12 AM
I haven't really gotten a straight answer yet. I downloaded the Programming in Objective C book by Kochan which is actually a real help

I hope you bought it. He reads and posts on these forums.

but it's really long.

Get over it. You'll be reading constantly for years if you are serious about programming.

In the last day I've learned how to send objects commands, memorized a lot of the language with integers and what not. Just want a basic guide.

That sounds like a good start.

Now man up and accept the fact that there is not going to be a short cut. You'll have to read that book. Then you'll probably want to read another book (Hillegass). Then you'll spend a fair while reading the documentation and class references on the Apple developer site.

chown33
Jul 10, 2010, 03:17 PM
I haven't really gotten a straight answer yet. I downloaded the Programming in Objective C book by Kochan which is actually a real help but it's really long. In the last day I've learned how to send objects commands, memorized a lot of the language with integers and what not. Just want a basic guide. And the app I would want to build is a game/building app if that helps you with anything and thank you for a reply.

You need to clarify what your goal is, for yourself and for anyone you're asking for advice.

Is your goal to learn Objective-C? That's what you initially stated, and it's what people have been offering advice for.

Or is your goal to make games, using whatever means will make the game work as soon as possible?

Because if your goal is to make games, then there are game-building tools you can use, like Unity3D or cocos2d. You will still need to think in a logical and systematic way, and know some fundamentals of computer programming like composition and decomposition.

No matter how you do it, there is no "Instant iPhone Developer" path, and the tools for every path take some learning, but there are different paths depending on exactly what your goal is.

phillipie99
Jul 10, 2010, 04:57 PM
Don`t start with learing C just because objective -c is from C dosent meain you should learn it first. C isnt an object oriented language and it would be best to start with a book like objective-c for dummies.

Avicenna
Jul 11, 2010, 09:54 PM
Yea...dont start off with C. Since you are going into an Objected Oriented programming lanuage, it would be a bad idea to learn C because it will enforce into you a Procedural Oriented thought process. If you have never programmed before, I suggest you start off with OO programming lanuage such as Java or Python. Spend sometime learning it (it takes time, unlike what typical books suggest that you can learn Java in 24 hours). Spend some time with them, I am talking 1-2 months. THEN get into C. Learn basics, pointer arithmetic, syntax, but dont go too deep in it. THEN learn Objective-C. Thats what I did atleast, and just started programming for IOS 3 days ago, and already getting a hang of it, writing my first app. Good Luck :)

Creative3
Jul 12, 2010, 01:22 AM
So my clarified goal is to be able to develop an iPhone app. The app would be a building/game, ok. But in order to do that yo have to learn Objective-C for coding. I am learning Objective-C right now and not just C. It's actually coming to me really, really easy on how programming is done and i've already memorized most of the language. I've had lots of experience with tech and software which might be helping me with this. So my plan is to just develop and code for a game/building application for the iPhone/iPad.

If you know the way i should be going that would get there the quickest it would be greatly appreciated. Thank You

Cromulent
Jul 12, 2010, 02:13 AM
So my clarified goal is to be able to develop an iPhone app. The app would be a building/game, ok. But in order to do that yo have to learn Objective-C for coding. I am learning Objective-C right now and not just C. It's actually coming to me really, really easy on how programming is done and i've already memorized most of the language. I've had lots of experience with tech and software which might be helping me with this. So my plan is to just develop and code for a game/building application for the iPhone/iPad.

If you know the way i should be going that would get there the quickest it would be greatly appreciated. Thank You

Remember that learning the language is the easy part. The hard part is learning how to program.

The best and only advice that is worth giving is to practice. Practice every single day. Learning to program is much like learning a musical instrument and takes hard work and dedication to become good at.

How are you at maths and physics? If you want to make a game you will need to be get those up to scratch too.

Creative3
Jul 12, 2010, 01:13 PM
Remember that learning the language is the easy part. The hard part is learning how to program.

The best and only advice that is worth giving is to practice. Practice every single day. Learning to program is much like learning a musical instrument and takes hard work and dedication to become good at.

How are you at maths and physics? If you want to make a game you will need to be get those up to scratch too. Yeah i'm pretty good at math cause i'm a junior in high school so i still have my brain working with this stuff.

Creative3
Jul 12, 2010, 04:51 PM
I've stopped reading the book by Kochan and switched over to the sHook called "Become An Xcoder" and it's seems to be coming to me really easy the way the book is and seems good for beginners, do any of you guys know this online book?

dejo
Jul 12, 2010, 05:27 PM
...and switched over to the sHook called "Become An Xcoder"
Is that anything like an eBook? ;)

...do any of you guys know this online book?
Yes. It's actually been mentioned plenty of times before:

http://forums.macrumors.com/showthread.php?t=884966&highlight=become+xcoder
http://forums.macrumors.com/showthread.php?t=795072&highlight=become+xcoder
http://forums.macrumors.com/showthread.php?t=776712&highlight=become+xcoder
...

shrtcrt
Jul 13, 2010, 12:59 AM
There are many great books out there. I highly recommend AAron Hillegass's book Cocoa Programming Third Edition.

http://www.amazon.com/Cocoa-Programming-Mac-OS-3rd/dp/0321503619/ref=sr_1_3?ie=UTF8&s=books&qid=1279000737&sr=8-3

That will get you up and running.

skunkworker
Jul 13, 2010, 10:54 PM
Well depending on what kind of game programming you will be doing, learning some begineer c++ will definitely be useful for game logic ( stuff that goes in the pipeline) as its used alot for calls that happen over and over and over, where objective-c isnt the best option. But for more simple games it really doesnt matter that much.

Matthew Yohe
Jul 13, 2010, 11:02 PM
I am learning Objective-C right now and not just C. It's actually coming to me really, really easy on how programming is done and i've already memorized most of the language.

Hehe, no you haven't.

Anyway, it depends on the type of game you want to write. 3D? 2D? Either way, if you want to build a "Strong" gaming app, you will likely need to learn some OpenGL as well.