 |
 |
Another beginner with questions.
|
 |
|
 |
|
Junior Member
Join Date: Mar 2001
Location: Park Ridge, NJ, USA
Status:
Offline
|
|
I'm fairly new to the PPC platform - I just bought my first Mac 3 months ago, and I got Mac OS X from the start.
I know a bit of C++... I've studied classes, references, pointers, some inheritance, and almost all of the basics -- I'm just about up to linked-lists and polymorphism, etc.. but I've stopped.
Here's my predicament... I'm still very interested in programming, but with Mac OS X (and Darwin), I'm thinking that C++ isn't the best way to go.
All of the source I've seen for UNIX has been in C. But I feel that, although C isn't that big of a change from C++, that if I'm going to change to C, I may as well rethink my options...
My question is: What would be the best language to do things for OS X as well as UNIX? I know Java is one of the most versatile languages (from what I've heard), but I've also heard that it's kind of slow and buggy and isn't going to stay for long (then again, I know these are all just rumors, and some people even say that Java will replace C++) - I've also heard about C#, and it sounds extremely interesting... what are it's uses and is it a good time to start learning before it gets popular?
Any opinions welcome.
|
|
|
| |
|
|
|
 |
|
 |
|
Professional Poster
Join Date: Dec 2000
Location: Chicago, Illinois
Status:
Offline
|
|
Because you already know a lot of C++ (aka link lists is right at the end of most intro courses), I wouldn't suggest Java, UNLESS you're planning on developing cross-platform applications. If you're learning just for OS X (or unix, for that matter), I'd learn C. It's a lot faster than Java, and plus you can use the Obj_C Apple APIs to make OS X applications.
But that's coming from someone who's main language is Java,
F-bacher
|
|
|
| |
|
|
|
 |
|
 |
|
Fresh-Faced Recruit
Join Date: Jul 2001
Location: Rehoboth Beach DE
Status:
Offline
|
|
Objective C,a superset of C,is the native language of OSX.Install the Developer tools if you haven't already and look for Object Oriented Programming and The Objective C Language.Objective C++ is being created so that C++ code works natively in the Cocoa enviroment.Java is very useful for cross-platform and web programming.Java is neither going to disappear nor replace C++;there are many languages and there always will be.C# is a proprietary language written by Microsoft that is a somewhat cleaner and tighter version of Java,from what of seen of it it looks fairly interesting,but it doesn't have the dynamism or the simplicity of Objective C,and I don't know what plans,if any,Microsoft has in making it cross-platform.The only book available on Cocoa programming is Learning Cocoa,though it is just OK.There is a book coming soon by Aaron Hillegass,which is said to be quite good by people who have edited it.
|
|
|
| |
|
|
|
 |
|
 |
|
Junior Member
Join Date: Mar 2001
Location: Park Ridge, NJ, USA
Status:
Offline
|
|
What exactly differentiates Obj. C from C++ and C?
Thanks for all the help guys.
|
|
|
| |
|
|
|
 |
|
 |
|
Professional Poster
Join Date: Dec 2000
Location: Chicago, Illinois
Status:
Offline
|
|
Originally posted by Ekim Neems:
<STRONG>What exactly differentiates Obj. C from C++ and C?
Thanks for all the help guys.</STRONG>
Obj C. is a superset of C. That just means that everything you can do in C, you can also do with Obj C. No relearning to do from C to Obj C, just additonal learning. I don't know much about C++ (although I do have a dusty book on it that I should read sometime), but unless you're going to do kernel hacking, I'd stick with Obj C (I believe that's the only part of OS X that uses C++ as of now).
Oh yeah, C++ hsa pointers, and pointers aer bad. People intentionally avoid C++ to avoid pointers.
HTH,
F-bacher
|
|
|
| |
|
|
|
 |
|
 |
|
Junior Member
Join Date: Mar 2001
Location: Park Ridge, NJ, USA
Status:
Offline
|
|
So, with the time I've spent learning C++ (which isn't THAT much actually), is it worth it to stop while I'm not too far ahead and just start learning Objective C?
|
|
|
| |
|
|
|
 |
|
 |
|
Professional Poster
Join Date: Dec 2000
Location: Chicago, Illinois
Status:
Offline
|
|
Originally posted by Ekim Neems:
<STRONG>So, with the time I've spent learning C++ (which isn't THAT much actually), is it worth it to stop while I'm not too far ahead and just start learning Objective C?</STRONG>
Well no. It's nice to have a good knowledge of many different languages. The big thing you should take from C++ is the OOP aspect - that can be applied to most every object oriented language. Programming is more about the process, not the specific language (although picking the right language for your task is important).
I honestly would keep learning C++ and start trying to do the same things with C/Obj_C, but at a remedial level. That way you can transfer useful knowledge from C++ to C/Obj_C while still being able to lean higher level OOP language concepts.
F-bacher
|
|
|
| |
|
|
|
 |
|
 |
|
Junior Member
Join Date: Mar 2001
Status:
Offline
|
|
I wouldn't worry too much about learning Objective-C. The language is so simple that you can learn it in an afternoon if you're already familiar with object oriented concepts.
Learning the Cocoa API is another matter.
-Peter
|
|
|
| |
|
|
|
 |
|
 |
|
Professional Poster
Join Date: Dec 2000
Location: Chicago, Illinois
Status:
Offline
|
|
Originally posted by Wixar:
<STRONG>I wouldn't worry too much about learning Objective-C. The language is so simple that you can learn it in an afternoon if you're already familiar with object oriented concepts.
Learning the Cocoa API is another matter.
-Peter</STRONG>
Yeah, that whole half-baked documentation really pisses me off. I hope they finish off all the "Desciption coming soon"s before 10.1.
F-bacher
|
|
|
| |
|
|
|
 |
|
 |
|
Fresh-Faced Recruit
Join Date: Jul 2001
Location: Rehoboth Beach DE
Status:
Offline
|
|
The documentation problem is a serious one,I'm trying to get OpenGL working natively in Cocoa,been having a lot of problems.
|
|
|
| |
|
|
|
 |
|
 |
|
Addicted to MacNN
Join Date: Mar 2000
Location: London, UK
Status:
Offline
|
|
Originally posted by 4.669:
<STRONG>The documentation problem is a serious one,I'm trying to get OpenGL working natively in Cocoa,been having a lot of problems.</STRONG>
There is beta NSGLContext documentation available at http://connect.apple.com under the "downloads" section, and OmniGroup has some information about it too.
|
|
|
| |
|
|
|
 |
|
 |
|
Dedicated MacNNer
Join Date: Apr 2001
Location: Bethesda, MD
Status:
Offline
|
|
Originally posted by Ghoser777:
<STRONG>
Obj C. is a superset of C. That just means that everything you can do in C, you can also do with Obj C. No relearning to do from C to Obj C, just additonal learning. I don't know much about C++ (although I do have a dusty book on it that I should read sometime), but unless you're going to do kernel hacking, I'd stick with Obj C (I believe that's the only part of OS X that uses C++ as of now).
Oh yeah, C++ hsa pointers, and pointers aer bad. People intentionally avoid C++ to avoid pointers.
HTH,
F-bacher</STRONG>
Well, C has pointers. Therefore Objective C has pointers too (not that I know Obj-C). Pointers are a powerful tool that can bite you in the ass if you aren't be careful.
dave
|
|
|
| |
|
|
|
 |
 |
|
 |
|
|
|
|
|

|
|
 |
Forum Rules
|
 |
 |
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is Off
|
|
|
|
|
|
 |
 |
 |
 |
|
 |
|