Re: Java or C++ College Path



On Tue, 29 Aug 2006 09:26:50 -0700, bugnthecode wrote:

I've decided on a Comp Science Programming major in college, and at the
community college I go to you must pick a language concentration. The 3
options are Visual Basic, Java, or C++. To me, Visual Basic doesn't
seem the way to go, (though I've never done any actual programming in
it) so I'm trying to decide between Java and C++.

I've done some programming in both languages. I've probably gone a
little further int the java programming, but lately I've been learning
C++ to develop an app that can interface more easily to my hardware
(serial port com. and driver interfacing). So far I really don't have a
preference to which language, they both seem to have their headaches.

I know that each language is better used for it's intended purpose
(choosing the right tool for the job). But I think this decision comes
down to programmer marketability. Which language will be more
marketable?

So what's your take? Which concentration would you recommend and why?

Thanks for your input,
Will

I'd totally drop most of C++; it is a messy, nasty and "evil" language.
Stick with Java or something higher than C++ where you can, and use plain
C where absolutely needed. And optimize last - this does not always
automatically mean "rewrite performance-critical parts in C"; because
sometimes C is slower!

Almost all high-level languages can speak with C. Take a look at JNI since
you already know Java. When you need to interface with hardware, this is
usually done via C also (JNI again) - since most OS's are written in C.

...this is a win-win situation; you get a high-level language without
loosing access to the low-level parts of OS/hardware..

Java - or high-level languages in general - are excellent for some jobs, C
(low-level) is excellent for other jobs. C++ is trying to be both Java, C
and a bunch of other things at the same time; it fails miserably at this
of course.

If you do go with C++; use it minimalistically and note that you cannot
use most of the "advanced" features (not really that advanced) in C++ and
get access to what you write (libraries) from other languages.

Oh, and just ignore "Template Meta Programming" (a C++ thing) - it is a
dead end. If you go there; you should have switched to a higher level
language a long time ago.

If you're looking for what is needed job-wise - well, I'd do a quick
job-search and see what's out there. No harm in knowing both Java and C++;
but maybe pick the one that is most needed if you need to pick one to
focus on now.

</rant>

--
Lars Rune Nøstdal
http://lars.nostdal.org/

.



Relevant Pages

  • Re: Static vs Dynamic
    ... (Java has too much noise in its source code, ... lot to ask and is typical in a typed language supporting polymorphism. ... > developers can easily learn the Java programming language; ... > obivous bugs slip through and b) in many cases, ...
    (comp.lang.lisp)
  • Re: why is "self" used in OO-Python?
    ... and worse this has spread from Java into other ... by whatever happens to be the first OO language they learn". ... If the first programming language (or the ... I have no objection to teaching Java in a CS curriculum. ...
    (comp.lang.python)
  • Re: Public disclosure of discovered vulnerabilities
    ... I spoke of Java; ... > necessary when programming in Java. ... > it is every single programmer who wants to use the language securely. ... this is what we call the "mental model" problem in aerospace. ...
    (sci.crypt)
  • Re: 71% Say Finding New Energy Sources More Important than Conservation
    ... Most of the drive to define was for a test programming language, because each tester had it's own language and the engineer would have to re-write the program every time the testor changed. ... The only reason it was used was because people saw that it would have a longer life time than ADA. ... My group at Stanford switched to Java as their language of choice after giving up on C++ as too flawed to use. ...
    (soc.retirement)
  • Question on variable binding and assignment
    ... My Java for dummies book didn't tell me this stuff. ... Then for a dynamically typed language such as Perl, ... concept of "unbound variables" in a programming language in the first ...
    (comp.lang.lisp)