Jump to content

Programming Language


djet
 Share

18 posts in this topic

Recommended Posts

Well after a year in Visual Basic, I'm trying to decide where to continue. My school teaches Java next year, but before I began thinking of continuing in programming, I decided not to take it due to the ineptitude of my teacher in VB and the fact that she teaches Java as well. Anyways, I want to continue learning, but I know that VB is a basic language and probably not really used that much (correct me if I'm wrong). I've looked into others and particularly C++. All I really know about C++ is that it's got Visual C++ as it's full name and it's run by Microsoft so I didn't know if it was any way related to VB. Also, this is sorta random, but this would give me an idea about real programming: what language would a game like WoW be coded in and what language would Leopard be in? Heck for all I know they might be in their own language....

 

Thanks in advance :)

Link to comment
Share on other sites

Java is actually a very logical next step after VB. You'll begin working closely with object oriented development which is great, but still within the confines of the platform-independence and the libraries that come with it. Then I would suggest starting with C, C# or C++ because they are very similar, syntactically, to Java.

 

The tricky part to learning programming is understanding the logic behind it and understanding the paradigms used today. The languages themselves start becoming irrelevant and you find that you've spent this time learning "programming", not individual languages.

 

Also to answer your last question: both examples will probably be developed using C (or a derivative), but operating systems usually implement multiple programming languages -- sometimes even to levels as low as assembly code. I bet that doesn't help your understanding :).

Link to comment
Share on other sites

The Sun Java Tutorials will do a great job of getting you started, especially since you have a background in VB/.Net. It'll explain getting a viable development environment set up on your local machine, the concepts behind the language and even how to build a GUI to the screen using the pre-made packages called AWT and Swing. Other stuff such as the properties of data types you probably already know, but it can't hurt to reinforce that knowledge and clarify any differences in how Java handles it (for example, a String in Java is no longer a primitive type, it has been extended to allow for some advanced operations on itself).

 

Once you've got the basics drummed into your head, the Java API docs will be all you need to do anything with the language. Beware that this is the deep end. The API documentation is a very concise, thorough guide generated automatically from the code that makes up the already existing Java (specifically J2SE) codebase you will be using -- it can be a little hard to read, but once you understand the language and what the method/class documentation is telling you it'll be an integral reference.

 

Good luck. I'll be happy to help you if you run into any walls, I remember how difficult it can be to get into.

Link to comment
Share on other sites

Yea, java would be a good step to take. Then I recon you should move onto C, then to C++

Thats what Im doing at the moment, its working out pretty good.

Link to comment
Share on other sites

I recommend you learn Java until you have all the basics down and then grab yourself a book about something called "data structures and algorithms" to learn something about basic algorithm theory and how to write efficient programs (in terms of both speed and memory).

 

Hint: when working with Java, always keep a link to the Java API Documentation site so you can find what classes exist in which libraries and which methods (functions in Java terms) are available to them.

 

Cheers,

 

hecker

Link to comment
Share on other sites

Hey I saw on the site a thing about NetBeans. I remember my school having that installed. SHould I get that or just the normal thing.?

 

NetBeans is just an IDE (Integrated Development Environment - software that will aid with writing and organising your code) and everyone has a preference so I suggest you try out a few before you make up your mind. There are plenty of free or open source IDEs (such as Eclipse or NetBeans) and also some commercial ones (such as my favourite, TextMate).

Link to comment
Share on other sites

Well after installing Netbeans and Java SE on my Mac, I've got an error. When creating a project, it freezes at 25%. From what I've heard this is a common error for Leopard users and there doesn't seem to be a fix for it.....

Link to comment
Share on other sites

  • 2 weeks later...
Yeah I've seen C++ is used in a lot of stuff and also Java software isn't working.... >.>

 

Anyone got some good C resources?

References

If you install Xcode 3, you will get GNU GCC (short for GNU Compiler Collection). It consists of C, C++, and Objective-C compilers among others (such as Fortran, Java). After make a decision which language to learn, grab the bible for that language, namely

  • For C, "The C Programming Language" 2nd ed. written by Brain W Kernighan & Dennis M Ritchie
  • For C++, "The C++ Programming Language" 3rd ed. written by Bjarne Stroustrup
  • For Objective-C, "The Object-C 2.0 Programming Language" by Apple (as PDF)

Choice of IDE

Xcode also comes with a development environment (actually Xcode is just that) supporting C, C++, and Objective-C although it's no where near good enough as other well-known environments. You may want to grap Eclipse for this purpose. Eclipse, which is written with Java and is free, provides solid environment for languages C, C++, Java, and scripts PHP, Python, and so on.

 

Recommendation

I recommend to learn C language first, then C++ language if you are serious about this. Then you can use your code on virtually every platform with little effort. Otherwise, Objective-C is not a bad choice for writing some codes just for Apple applications. Good luck!

Link to comment
Share on other sites

  • 2 weeks later...

Well I found a guide for C++ and started looking through it..... wasn't really going to try it but the guide seemed to really know how to get me from VB to C++ and I don't really feel lost anymore. Compiling and stuff like that I still need to figure out, but everything else is going fine.... I think.

Link to comment
Share on other sites

Sorry, but I just had to respond to part of your original post since no one had responded to this part yet - Visual C++ is not the "full name" of C++, and C++ is not run by Microsoft (though Visual C++ is). The full name of C++ is C++.

 

I don't think it really matters what language you learn. Most object oriented languages are very similar in structure, just with slightly different syntax. If you learn one, you can easily pick up just about any other one pretty easily.

Link to comment
Share on other sites

Thanks Sarah. It turns out that I picked up C++ pretty fast ( I think.) I've started making some programs (simple stuff) and am having fun with it. It's a lot quicker programming than VB is, although 2 things I havn't gotten close to mastering; pointers, and interfaces. Pointers I've started to get my head around but I really have no clue where to start on interfacing.....

 

Here's a quick little app that I made:

 

 

 

FAIL OF THE DAY: When not thinking, I tried to show a friend, that was using Windows, this application. To my utter disbelief, he couldn't run it.... I wanted to hit myself in the head for that one.

 

 

I feel like I just totally wtf pwnzored (sorry for the terminology) Edd's help..... but for some reason Java didn't stick.... could have been the fact that it didn't install BUT, C++ did.... although now I get the feeling I jumped in way over my head to the fact that most people insisted on learning C first ..... oh well. Not like I've got to save the world with some code.

Link to comment
Share on other sites

  • 4 weeks later...

C++, Java and Obj-C are for really heavy-weight lifting in languages. I took C++ in class, the amount of time it takes to write up a C++ to do what I can write in Ruby in 5 seconds is enormous. If you just want to learn to program to do high level stuff like parsing some data, doing some remote communication, present an interface, store some value, go learn Python, Ruby, Perl. I personally think C++ and C are for the heavy lifting i.e. media codecs, signal processing algorithms, image data matrix manipulation, numerical differential calculation solver etc.

 

You still will learn a lot of the computing science concepts with Ruby/Python, in fact, you will probably learn more in a more concise way.

 

I can't comment on Java but I find writing Java extremely tedious, if not more than C++, I literally have to keep the reference documents open at all times.. :x

 

I am personally twinkering with Python atm, I find it great to be able to communicate with C and C++ programs, and its presence on literally every platform. Python can be used for website scripting, interface building, command line. It's literally everywhere, and I think Python is replacing OLE and Visual Basic programming in the industrial environment too, so that might be a bonus as well.

Link to comment
Share on other sites

 Share

×
×
  • Create New...