Sunday, August 2, 2009

Can someone tell me what each programming language (C++, Java, Cocoa...) "does" in lamens terms?

I am interested in learning how to program on my mac. I would love to learn how to physically create or make something happen on my mac, even if it is something little. For instance, the language I would like to learn is a language where you do all this coding and run it. When the code is ran, say a box pops up and says, "Hello, how are you today?" and in that box, there are three buttons, one that says, "Fine," another that says, "Not so good," and another that says, "Leave me alone!" I want to learn a language that "Creates" something when it is ran, no matter how simple or complex it is. Can all languages do what is mentioned above or is each language used for a specific thing like more complex (making your computer talk to your printer etc.)? Can someone give me a short brief of what each programming language (C++, Java, Cocoa or something other) does or what it is used for? What's a good first language to learn? Also, I'm a mac user so if there are any mac spec. stuff--great

Can someone tell me what each programming language (C++, Java, Cocoa...) "does" in lamens terms?
Ok, so it sounds like you are looking for a programming language for the Mac that can create GUIs (Graphical User Interface). I'll try to give you synopsis of the languages that I'm familiar with from that angle:





1 - C++ - This is a very powerful language that can do A LOT of things with your computer. It is also very easy to create "buggy" programs with this language. Nonetheless, many professional programs are written in this language, but I would say that it is not for "casual" beginners. As far as GUIs with C++ go, I'm only familiar with Microsoft's "Visual C++" for Windows, so no help there (same for Microsoft's C# language). You can probably do Mac GUIs with C++, but somebody else would have to help you with that.





2 - Java - This language is heavily influenced by C++, but is also designed to be "safer" (less likely than C++ to cause memory problems) and also "machine independent." That means that you don't need to change the program to get it work on a Mac, Windows, or Unix machine (I'll spare you the explanation of Virtual Machines). Programming GUIs in Java should probably be pretty universal.





3 - HTML and JavaScript - I mention these two languages together because (A) I know them, and (B) they can be used to create "web applications." I'm not sure if that is something you are interested in but there is a lot of information out there on these guys that you can study from. JavaScript is a lightweight version of Java that can be used to change HTML on-the-fly. You can also embed Java "applets" into HTML pages. Again, these languages are pretty universal and should work well on the Mac.





4 - Perl - The final language that I'm going to suggest to you and also my personal favorite. An easy enough language for beginners to learn, but powerful enough to write fully functional programs in. For GUIs, you're going to use something called Perl/Tk (the Tk stands for toolkit). If you're willing to invest in a couple of thick O'Reilly books, you'll have just about all the information you'll need to program in Perl and Perl/Tk. Those books are "Programming Perl" and "Mastering Perl/Tk".





So, I hope that helps. I know it's a long answer, but I think it's what you're looking for.


No comments:

Post a Comment