PDA

View Full Version : Learning C++/Objective C




xiaoyu04
Oct 26, 2006, 12:51 PM
Hello:
I want to learn to program in C++ and objective C, and I have experience with java and some basic python scripting. My question is, is there any good books that are recommended for getting started? and what development environment would be recommended? I know macos x offers xcode, but how does that compare to other development environments?



Heath
Oct 26, 2006, 01:04 PM
For C++ I usually recommend Bruce Eckel's book Thinking In C++ available here http://mindview.net/Books.
For Objective C, there are not a whole lot of books to choose from, just hit Amazon and scroll through the list there.

As far as environments, if you are planning to stick with programming on the Mac, you'd be silly not to use X-Code. It is quite full featured and holds its own against all the rest of the 'big' IDE's.

rtharper
Oct 26, 2006, 01:21 PM
Nothing beats "C++ How to Program" by Deitel. Best book on C++. Ever.

Quboid
Oct 26, 2006, 01:37 PM
I am currently learning to prgram in C as part of my computer engineering course. From experience i can tell you that programming is not the language but the "LOGIC" and practice, so having programmed in java and python does not really make much of a difference. Syntaxes are easy to learn (trust me) which is what you will learn from your book, but the logic you have to teach yourself. As far as book are concerned, you can check out amazon, they would rate their products and they also have good product description (most of the time).
I "program" in c, and i use xcode, i prefer it over the borland environment in school (personal opinion). But if you dont like it (i didn't at first) just give it some time, you would learn to:) . I never really searched for anythnig else.

____________________
Ibook g4 14'

"my anger far outweighs my guilt"- Bruce wayne

Soulstorm
Oct 26, 2006, 04:26 PM
Well, if you program in C++, you're going to have a hard time learning all the libraries and how to use the standard template library properly. But, when you have learned all that, every other language you will try to learn will be piece of cake.

Catfish_Man
Oct 26, 2006, 05:00 PM
Check out this page: http://brok3n.org/cocoa.html
It has good advice on books and pages for learning ObjC+Cocoa

xiaoyu04
Oct 26, 2006, 05:12 PM
thanks for all the help guys!:D I will start looking into some of those recommended books

bbarnhart
Oct 26, 2006, 09:36 PM
http://www.cocoadev.com/

xiaoyu04
Oct 27, 2006, 02:26 PM
so, if i remember correctly objective C is similar or used in cocoa development? So I could potentially develop apps using objective C for a mac?

Soulstorm
Oct 28, 2006, 02:04 AM
so, if i remember correctly objective C is similar or used in cocoa development? So I could potentially develop apps using objective C for a mac?

Ιf you know C++, learning Obj C will only take 2 days from your life.

ATG
Oct 31, 2006, 04:18 PM
Ιf you know C++, learning Obj C will only take 2 days from your life.
I disagree. You will still need to learn:
Messaging
Retain/Release Memory Management
Dynamic Typing
Unlearning C++ habits
How Cocoa Works

That last one is particually important. You can never learn every single class and method in Cocoa but learning how it works and the routine it follows is learnable and essential.

Soulstorm
Nov 1, 2006, 12:52 AM
I disagree. You will still need to learn:
Messaging
Retain/Release Memory Management
Dynamic Typing
Unlearning C++ habits
How Cocoa Works

That last one is particually important. You can never learn every single class and method in Cocoa but learning how it works and the routine it follows is learnable and essential.

Messaging and Dynamic typing are indeed something that is learn over time with a lot of practice, but the concept is easy to grasp. How Cocoa works is irrelevant to the Objective-C language, since Cocoa is an Api, and you don't need to use it to know Objective well.

Memory management is in those two days I mentioned. If you know C++ well, at a level to know about pointers, how they are used, and memory alllocated with the 'new' method, you only have to learn about the retain count and the release methods.

Note that I didn't say 'mastering the OBJ C will take 2 days from your life' I said 'learning' it. Becoming proficient in a programming language is something that takes a lot of time and practice, and same things happen with Obj - C.