![]() |
|
|
|
#1
|
|||
|
|||
|
C++ is not going anywhere, and learning C++ before learning .net and java is going to be a lot easier than the other way around.
Focus on C++, get a few books, I don't know any books in particular, but I'm sure somebody else can recommend one. And while it is true that a lot of the actual development you will be doing in the field will be in languages other than C++, people who understand the fundamentals (which a powerful mid-level language like C++ will provide) can program in anything. And of course you still have places like Google which do most of their development in C++. |
|
#2
|
|||
|
|||
|
Don't most programmers kind of hate C++ or am I wrong?
|
|
#3
|
|||
|
|||
|
I agree with pokergrader. Learn one language well, and you'll be able to pick up (most) other languages pretty fast.
A lot of people start out with C. It's a pretty basic language that gets you pretty close to the hardware, but not as close as Assembler. Many current languages, i.e. Java and C++ (obviously) have their roots in C, so it's a good basis in that respect, too. As for books to learn C, the so-called "bible" of C is a book called The C Programming Language written by the two creators of the language, Kernigan and Richie. I would also recommend a book called Programming in C by Kochan. |
|
#4
|
|||
|
|||
|
Unless you are going into an industry that uses C, which is pretty much embedded devices, some systems programming, or some other niche there is no real reason for most programmers to spend a lot of time with C. If you know you are going to be working with a technology, learn that technology, if you don't know what technology tell us what industry you want to end up in.
|
|
#5
|
|||
|
|||
|
[ QUOTE ]
Don't most programmers kind of hate C++ or am I wrong? [/ QUOTE ] It's a love-hate kind of thing. More hate than love, I guess. |
|
#6
|
|||
|
|||
|
[ QUOTE ]
[ QUOTE ] Don't most programmers kind of hate C++ or am I wrong? [/ QUOTE ] It's a love-hate kind of thing. More hate than love, I guess. [/ QUOTE ] I learned C first (well actually I had a college course in Fortran using punch cards (yes, I'm an old fart), but never did any serious programming in it. While there is something to be said for learning an easier language first, if you can program in C, you can program in anything. If you want something to run fast, write it in C or C++. If you want to get the program written fast, use Java, Perl, C#, etc. Compiled executables will always outperform interpreted or run-time compiled languages, so C and C++ are the workhorses for device drivers, OS kernels, word processors, spread sheets, etc., where shaving every nanosecond counts, whereas languages like Jave, C# and perl are used for smaller things like web applications or middleware, where maximizing programmer productivity is more important. |
|
#7
|
|||
|
|||
|
[ QUOTE ]
[ QUOTE ] [ QUOTE ] Don't most programmers kind of hate C++ or am I wrong? [/ QUOTE ] It's a love-hate kind of thing. More hate than love, I guess. [/ QUOTE ] I learned C first (well actually I had a college course in Fortran using punch cards (yes, I'm an old fart), but never did any serious programming in it. While there is something to be said for learning an easier language first, if you can program in C, you can program in anything. If you want something to run fast, write it in C or C++. If you want to get the program written fast, use Java, Perl, C#, etc. Compiled executables will always outperform interpreted or run-time compiled languages, so C and C++ are the workhorses for device drivers, OS kernels, word processors, spread sheets, etc., where shaving every nanosecond counts, whereas languages like Jave, C# and perl are used for smaller things like web applications or middleware, where maximizing programmer productivity is more important. [/ QUOTE ] I work in high-performance computing, specifically parallel computational fluid dynamics. It would mostly be a complete joke to program in anything other than C or fortran and I program almost exclusively in them. Performance hits in any other language are too large and MPI interfaces in those two languages are well built and straight forward. I do a bit of image analysis in python, but only because it's easier to handle image files and it's not computationally expensive anyway. There are certain efforts to use python in HPC, but that mainly works because all the modules are written in C anyway, python is just used for the scripting. I've never used punch cards, but I still regularly use fortran77. If anyone wants to talk about a pain-in-the-ass language, lol. [img]/images/graemlins/smile.gif[/img] |
|
#8
|
|||
|
|||
|
if your school is part of msdnaa you can score visual studio free. email cs dept.
|
|
#9
|
|||
|
|||
|
Just read this whole thread. I had no knowledge of, nor interest in, computer programming. Now I do. Funny how hating one's job makes one interested in other things.
So ... what did OP decide? |
|
#10
|
|||
|
|||
|
[ QUOTE ]
I've never used punch cards, but I still regularly use fortran77. If anyone wants to talk about a pain-in-the-ass language, lol. [img]/images/graemlins/smile.gif[/img] [/ QUOTE ] I have programmed f77 almost every day for the last 3 years...god damn I hate fortran. As you say though, if your code has to be v. fast, fortran and c are still likely the best choices. If absolute speed is not your goal then there are lots of languages that are easier and more *fun* to program in. Python, ruby, php etc. Perl is also a wonderful tool to have in your arsenal if you work in *nix environment. |
![]() |
| Thread Tools | |
| Display Modes | |
|
|