Help me pick my next Programming Language!

Discussion in 'Mac Programming' started by omfgninja, Sep 15, 2006.

  1. omfgninja macrumors member

    Aug 9, 2006
    So, i've descided to start programming again. Its been a while since I ever made a good atempt at learning a language.
    A long time ago, I learned Turbo Pascal for a High School class. I also used to do alot of scripting stuff with OneClick, (back in Clasic). I also used to do some stuff with RealBasic back in OS 8/9.
    Even for a while, i worked with a Scripting Engine called "FaceSpan" which let you do all the application programming in AppleScript.
    Also, a couple years ago, I took a semesters worth of C, and a semesters worth of C++, but I had dabbled in them before.
    I wasnt too crazy about either, but oh well.
    At this point, I think my "Programming Logic" is pretty good, and im sure ill pick up whatever language I choose pretty quick.

    Thing is tho, I have programmed anything in a few years. And back when I was doing C++, I was using a PC. But now I got this awsome Mac Pro, and have been tempted to start programming again.

    This is my first computer with OS X on it. And ive never developed anything for the "modern" Mac OS.
    So im totaly at a loss to knowing what language to start off with. Let alone what sorts of IDE's and etc..

    So, thats why im asking all of you.
    What are some of the more popular languages for OS X are out there right now?
    Ive been reading some about Cocoa, I did a little reading on it, but i cant figure out exactly what it is.
    I would eventualy like to do some 3D Graphics programming. What languages have alot of support and power with 3D graphics stuff for the Mac?
    the 3D stuff is pretty optional at this point. If I descide to do that later, I would be open to learning a different language just for 3D.

    Really, at this point, any info helps. Thanks!
  2. Krevnik macrumors 68040


    Sep 8, 2003
    Cocoa is a framework... Objective-C is the language. Personally, I would pick Objective-C in a heart-beat. If you want to dabble around, you usually don't spend too much time getting the app up and running, versus C++/Carbon. Java is another language you can use for things, although Gaming isn't exactly its strong point.

    For gaming, Objective-C/C++ are still quite usable. I did some OpenGL work with Objective-C/Cocoa, and because Objective-C is also 100% compatible with C code, OpenGL works right out of the box.

    Although if you want to dodge any C-like language, you can always go back to RealBasic or Applescript.
  3. omfgninja thread starter macrumors member

    Aug 9, 2006
    Honestly, im gunna look into Cocoa some more. Is Objective-C like, well, normal C with OOP stuff? Or what?
    Also, Cocoa, as a framework, what does that give me besides access to the GUI? what else is there?
    OpenGL programming also sounds interesting. How hard is it to get started with programming OpenGL?

    Also..... if any of you have any good intros on any of these languages, lemme know. Also, if any books you know that are really awsome, im totaly up for buying some.
  4. MisterMe macrumors G4


    Jul 17, 2002
    Every new Mac ships with Xcode, the MacOS X development system. This IDE provides a GUI for gcc. If you are serious, then you should research the programming languages included in and supported by gcc. My experience is that the best way to learn programming is to have something to program. Your end product will dictate your choice of language.
  5. Krevnik macrumors 68040


    Sep 8, 2003
    Objective-C is based on C, but supports OOP in a different way than C++. Memory is a little more straight-forward to manage for objects, methods have a different syntax which I find a little nicer to work with, and dynamic typing can lead to some pretty powerful uses once you get more familiar with the language. The guys who wrote the OS X Missing Manual have a couple introductory books for Cocoa programming which could be useful. Apple has a 'getting started' page, but might assume a few things you may or may not know yet:

    OpenGL isn't really all that easy, since there is a lot of heavy-duty math involved with 3D graphics. 2D graphics are far simpler, although if you want to tinker with 3D, you are going to need a few books on OpenGL and 3D Programming to get started. I personally started with 3D far enough back that 3D acceleration wasn't even part of the course, back when 3D engines did everything by hand, without a GPU, so I am not sure what books will help you in this area. Suffice it to say, once things 'clicked' for me with OpenGL, designing a 3D engine with OpenGL is actually pretty straight-forward, that is if you understand the how/why of the 3D transformation matrix first.
  6. Fairly macrumors regular

    Sep 24, 2006
    Cambridge UK
    If you're on OS X then there's only one programming language and you already know what it is.

    Pascal is going to give you some bad habits to break. C++ worse ones. Turbo Pascal is a layman's IDE anyway. You NEED C. You have to have this. If you don't know C, then get K&R and take a few months and study well.

    Then come back to the native language of OS X, learn that in a couple of hours, and set to work.

    When you have the languages under your belt, the hard part begins. The OS X API is huge. It dwarfs those found on other platforms. You have to learn to find what you need and get a feeling for how things work.

    That will take time. You'll be able to hack out simple apps in a couple of days, but it will take months or years until you're proficient.
  7. omfgninja thread starter macrumors member

    Aug 9, 2006
    So I started learning Cocoa, and im having alot of fun with it.
    I got "Cocoa programming for Mac OS X" second edition.
    Its been pretty good so far.

Share This Page