How can I start programming in Mac?

Discussion in 'General Mac Discussion' started by chrislee8, Jul 27, 2004.

  1. chrislee8 macrumors regular

    Joined:
    Jul 26, 2004
    Location:
    NY, NY
    #1
    I have OS X 10.2.8(jaguar).

    I heard of XCode, but it is for 10.3 Panther and higher.

    What do programming do with Mac?

    How do I start programming in my Mac? Any tutorial to create a windows just says 'hello world' then go from there?

    so little resources, no wonder Windows is dominating. why don't all Mac techie, act up, do something, if you guys hate windows that much.

    so far, all i heard and saw was blasting windows, but look at windows users, really sharing their programming knowledge, tutorial on everything everywhere.

    Maybe what i said is too harsh to accept. Truth hurt? hopefully u understand what i m trying to say.


    :)
     
  2. chrislee8 thread starter macrumors regular

    Joined:
    Jul 26, 2004
    Location:
    NY, NY
    #2
    frustration has been expressed a little above, now I still need to back to my questions if you guys still think i am worth to help a little.

    say I want to learn c/C++, what editor, compiler are available in Mac to use, i would rather use free/low cost software because a student can't afford to buy much software, but eager to learn.

    peace.

    I don't like windows that much too. just in case u think i am a Mac hater and Windows lover.

    :p
     
  3. jsw Moderator emeritus

    jsw

    Joined:
    Mar 16, 2004
    Location:
    Andover, MA
    #3
    Hey, relax, we don't think you're a troll.

    I didn't even start looking into Mac developpment until I got Panther, so I'm not sure what's out there for Jaguar. My opinion: Panther - especially if you can get the edu price - is well worth it for the developer tools.

    For C/C++, you can use the built-in compiler.

    Also, Java is available. Preinstalled on Panther, I can't remember what the deal with Jaguar is - I think it's more of a hassle there.

    Also, of course, there's UNIX scripting and AppleScript, both built-in.

    Honestly, if at all possible, I'd move to Panther and get the wonderful development tools that come with it, as well as the Java 1.4 environment.

    Presumably, most of this is available to the programmer under Jaguar as well; I just don't have a 10.2 system to verify it.
     
  4. King Cobra macrumors 603

    Joined:
    Mar 2, 2002
    #4
    Well, JGrasp allows you to compile and run Java, C++, C, Objective-C, etc. I recommend JGrasp way the hell over Xcode, because Xcode requires projects, target files, etc., so it's way too complicated for beginner programmer usage. JGrasp seems to run on Jaguar better than on Panther anyways.
     
  5. jsw Moderator emeritus

    jsw

    Joined:
    Mar 16, 2004
    Location:
    Andover, MA
    #5
  6. jsw Moderator emeritus

    jsw

    Joined:
    Mar 16, 2004
    Location:
    Andover, MA
    #6
    Good point! I'd forgotten about this after briefly looking into it. I still think Xcode is probably better for Mac-specific developement, but jGRASP is a cool tool, runs on Jaguar, and does what chrislee8 wants.
     
  7. Les Kern macrumors 68040

    Les Kern

    Joined:
    Apr 26, 2002
    Location:
    Alabama
    #7
    If you want simple programming, look at RealBasic.
     
  8. jsw Moderator emeritus

    jsw

    Joined:
    Mar 16, 2004
    Location:
    Andover, MA
    #8
    As we all know, Apple includes a great development suite free with each copy of Panther. They include Java. They include Apache. They include GNU tools.

    So... there are a lot of resources.

    Also, for Java - should you want to learn it - look into Eclipse.
     
  9. bousozoku Moderator emeritus

    Joined:
    Jun 25, 2002
    Location:
    Gone but not forgotten.
    #9
    Jaguar includes developer tools available from Apple. If your machine was pre-loaded with 10.2, there should be a Installs folder within the Applications folder on your machine. If you bought a retail version of Jaguar, those tools are on the Mac OS X Developer Tools CD-ROM.

    Xcode replaces ProjectBuilder, which comes from the NeXTStep developer tools. InterfaceBuilder is similar for both.

    While the tools aren't perfect, they're substantial and work reasonably well.

    There aren't as many resources for Mac OS X development, but they are capable. Besides the O'Reilly and Apple Developer websites already mentioned, MacTech is a developer's magazine focused on Macintosh development.
     
  10. abhishekit macrumors 65816

    abhishekit

    Joined:
    Nov 6, 2003
    Location:
    akron , ohio
    #10
    If you are looking to program in Java, netbeans is also a very good IDE. It contains everything you will need for core Java, J2EE, and even J2ME. I still don't use XCode because it takes too much time indexing files.
     
  11. MacFan26 macrumors 65816

    MacFan26

    Joined:
    Jan 8, 2003
    Location:
    San Francisco, California
    #11
    I second NetBeans for Java, I've found it to be the IDE that is easiest to use. There are a lot of tutorials and help if you just to a search for it. Mac programmers are just as or more willing to share as Windows programmers :)
     
  12. BillClinton macrumors member

    Joined:
    Sep 21, 2003
    Location:
    United States
    #12
    Are there any online tutorials that will help me start programming? My High School only offers classes involving Visual Basics, and I don't want to be that closed off (only works on Microsoft stuff only, right?) What's a good language to start out with? I'd love to be able to program well someday. Thanks in advanced for any replies.
     
  13. King Cobra macrumors 603

    Joined:
    Mar 2, 2002
    #13
    Learn Java. Java is the new "big thing." All the robots are going from C++ to Java, I heard. Though, for a first programming language, it's tough. It was one of my toughest college classes so far (2nd hardest out of 10, the 1st being College Writing), though I did well above average compared to the rest of the class. What I've found is: If you're going to learn Java at college (recommended), make sure you have both an excellent professor, an excellent programing book, and a lot of free time and patience on your hands for debugging your programs.

    Here's what my university did for COS 160 Intro. Java:
    The course page
    Assignments Every program from the text book <-- some .java files in the same chapters are scattered about

    I recommend that you especially save the 3rd link and play around with the .java files in JGrasp to get used to JGrasp, then play around with the files themselves, to get a huge jump on some of the basics of Java.
     
  14. chrislee8 thread starter macrumors regular

    Joined:
    Jul 26, 2004
    Location:
    NY, NY
    #14
    thanks, cobra.

    as far as which language to learn, i have made up my mind. c++

    this is not my first programming language. i am a developer on asp/asp.net vb/c# etc.

    i also played with VC++ with PRMan, Raytracing. It is my hobby.

    But I want to go lower level and plus i want to get to know Mac/Linux. And found out it isn't that easy to do programming in Mac. I bought my Mac not one week yet. I am almost regret. hopefully i will hold on.

    I also thinking installing Gentoo on Ti PB G4. so I can do my raytracing programming in C++ in linux. hopefully that will work out. If not, i go back to my VC++, so much tutorials, resources that I can learn from on the 'net.

    SIGHHHHHHHHHHHHHHHHHH
     
  15. jsw Moderator emeritus

    jsw

    Joined:
    Mar 16, 2004
    Location:
    Andover, MA
    #15
    I think that, as a language, Java isn't any harder to learn that C or C++. However, Java comes with a huge library of classes. That's what makes it so great - most of what you need has already been written. And that's what makes it hard - there are so many classes to know about.

    However, you can learn the classes as you need them. Java is a wonderful language, and the nicest thing is that porting from one platform to another is relatively painless. Not 100% painless, but not too bad at all.

    Objective-C, though, is something to know if you want to write Mac-only apps. I'm just starting to dig into it. My Java background is quite extensive, and, years ago, so was my C++. Objective-C is something new, and I'm excited to learn it.
     
  16. jsw Moderator emeritus

    jsw

    Joined:
    Mar 16, 2004
    Location:
    Andover, MA
    #16
    Hey, it's a cool language with a vast library of its own. Have fun!
     
  17. chrislee8 thread starter macrumors regular

    Joined:
    Jul 26, 2004
    Location:
    NY, NY
    #17
    oh, thanks for everyone's inputs.

    If i get Panther now, Tiger is coming out like when, very soon, then what if there is XCode next version only work with Tiger? THen i am fu*K again.

    that will lead me back to Microsoft's world of endless upgrading. then what makes Mac better than MS? (in this aspect, obvisouly)

    i m not offending mac users, just telling what i think.

    i will goto B&N to find out what book to start off a hello world program in Mac.
    in jaguar. I didn't find one tutorial off the 'net, dude!!! i m so pissed.
     
  18. chrislee8 thread starter macrumors regular

    Joined:
    Jul 26, 2004
    Location:
    NY, NY
    #18
    thanks jsw, u been great.

    so u just started, so tell me how u start, what to learn from? u just uses Xcode? what have u written(learned) so far?
     
  19. bousozoku Moderator emeritus

    Joined:
    Jun 25, 2002
    Location:
    Gone but not forgotten.
    #19
    You should probably look for the O'Reilly Learning Carbon book. It's not about C++ but the other books are almost all about Objective-C and, while it's probably a better choice, you've chosen C++. It's easy to wrap Carbon code in C++.

    Java is probably the best language on Mac OS X simply because it has better documentation than anything else available. I would say that I spent a lot of time doing research to implement something in Java, but with Objective-C, I spend too much time searching for answers that are only in the back of someone's mind. Once you know what APIs/classes to use, Objective-C is probably the fastest of all languages to implement nearly bug-free code.

    Did you check the Apple developer site? There are various tutorials available. The developer tools include many examples, as well.
     
  20. KeithsPuma macrumors newbie

    Joined:
    Jul 12, 2004
    #20
    Pascal ?

    At work I maily program in Delphi ( Pascal ) on THAT Windows platform.
    I Don't suppose there's any decent Pascal for the MAC ?
    Keith
     
  21. Nermal Moderator

    Nermal

    Staff Member

    Joined:
    Dec 7, 2002
    Location:
    New Zealand
    #21
    There used be an Apple Pascal, it was for System 6 and earlier if I remember correctly - I think System 7 switched the recommended language to C++.
     
  22. FredAkbar macrumors 6502a

    FredAkbar

    Joined:
    Jan 18, 2003
    Location:
    Santa Barbara, CA
    #22
    Eww, Carbon...;)

    First, to answer some of chrislee's latest questions:

    Tiger is coming out in the first half of 2005. It will feature Xcode 2.0...I'm not sure if that will work in Panther, but even if it doesn't, Xcode 1 or 1.5 (which we have now, I'm not sure what the version number is) will suit you just fine (unless you use some third-party program like others here have been suggesting). I would say yes, go ahead and buy Panther now, as long as you don't mind paying $129 ($69 educational) now and then that same amount in, say, 9 months, or whenever you want to upgrade to Tiger. In my experience, it's generally a good idea to upgrade to the next OS X version when (or soon after) it comes out. If you stay "behind the times," you will miss out on some new programs, features, etc.

    Personally, I like this better than how it is with MS and Windows. Windows will have gone at least 5 or 6 years (2001 to whenever Longhorn comes out) without a single upgrade, besides SP1 and stuff, but that isn't too major. I like being able to get new features and speed every year or 2 with Mac OS X.

    I've got a couple questions of my own for you guys:

    I'm interested in learning Java. I wouldn't mind (and would prefer, actually) buying a book on it (I learned C, Objective C, and Cocoa all from actual books). Does anyone have any suggestions for a good book on Java? I have experience with traditional languages (BASIC, C), object-oriented programming (Obj-C), and specific libraries of classes (Cocoa). It seems like Java/JavaScript is kind of a combination of all three of these types of things...am I right?

    Also, I'm learning JavaScript right now from an online tutorial. Will knowing JavaScript make it any easier to learn Java? I can tell that the syntax is sort of the same, at least for some things (like to have an object perform a method you write objectName.methodName()...similar to Objective C, where you write [objectName methodName]). Other than the object-oriented style, the JavaScript syntax seems almost identical to C. Is Java like that too? How different are Java and JavaScript?
     
  23. angelneo macrumors 68000

    Joined:
    Jun 13, 2004
    Location:
    afk
    #23
    Java and Javascript are 2 totally different items. Javascript is used to be called LifeScript. Although both might have similarities as with all object oriented programming, I don't think learning Javascript will help in Java as compared to learning other OOP.
     
  24. hansen macrumors regular

    Joined:
    Feb 12, 2004
    Location:
    Denmark
    #24
    I don't understand why you think Java is harder than C++. The two languages are very similar, but Java takes care of one of the biggest hazzles in programming: memory management. Also you don't have to worry about pointers, references, pointers to pointers and what do I know. These are the things that beginners and experienced programmers error in the most.

    I would go with Java as the first language if the choice is between C++ and Java and I wouldn't want to learn C++ at all if I didn't had to.
     
  25. bousozoku Moderator emeritus

    Joined:
    Jun 25, 2002
    Location:
    Gone but not forgotten.
    #25
    I agree with you, mostly. For most programming Java is simpler, but you may still deal with pointers in its shielded way. The good thing is that you don't have to de-allocate them, though.

    It's when things get complicated that C++ gets ugly and they're working at adding many C++ features like templates to give it that level of complexity.

    FredAkbar:

    While Java (Oak, Green) and JavaScript (CoolScript) have some similarities, they're not similar enough except in general source structure that you'll gain anything from your knowledge in one or the other.

    Bruce Eckel's Thinking in Java is excellent, as are the other books in the series. You'd probably learn a lot from Learning Java from O'Reilly. I've got more than a dozen books on Java, including many from Sun and find very few to be truly useful or clear. My Java in a Nutshell from O'Reilly is my most-handled book on the subject but it might not be suitable for newer programmers.
     

Share This Page