General advice

B

ben.a.yates

Hello, i have been an electronic engineer programmer for the last 15
years. In the early part of my career i was mainly a C programmer, but
in the last 10 years or so i've done little programming. All my
programming knowledge has mainly been self-taught with the help of a
few books here and there. For various reasons i would like to switch
my career back to becoming a programmer and learn object oriented
programming and i definitely need to learn windows programming.

My question is would it be best to start with C++, C# or java? What
compiler/IDE is best? What would be the best approach to windows apps
- API or framework or??

Any comments appreciated.
 
?

=?iso-8859-1?q?Erik_Wikstr=F6m?=

Hello, i have been an electronic engineer programmer for the last 15
years. In the early part of my career i was mainly a C programmer, but
in the last 10 years or so i've done little programming. All my
programming knowledge has mainly been self-taught with the help of a
few books here and there. For various reasons i would like to switch
my career back to becoming a programmer and learn object oriented
programming and i definitely need to learn windows programming.

My question is would it be best to start with C++, C# or java?

What are you hoping to do when you have thought yourself one of the
above languages? Different languages are good for different things and
different fields are dominated by different languages.

Java is, to my understanding, very popular in the telecom business as
an example. If you want to develop applications for the broad masses
you might consider C#. C++ can be used for almost anything (but then
again that applies to Java and C# too to some extent).
What compiler/IDE is best?

I'd personally recommend MS Visual Studio (or one of the Express
editions) for both C++ and C#, for Java I'd go for Eclipse, probably.
What would be the best approach to windows apps - API or framework or??

Not sure what you mean here, but for apps for the masses I'd suggest
trying the .Net framework and C#. An alternative (among others) is to
go for C++ and Qt.
 
R

rossum

Hello, i have been an electronic engineer programmer for the last 15
years. In the early part of my career i was mainly a C programmer, but
in the last 10 years or so i've done little programming. All my
programming knowledge has mainly been self-taught with the help of a
few books here and there. For various reasons i would like to switch
my career back to becoming a programmer and learn object oriented
programming and i definitely need to learn windows programming.

My question is would it be best to start with C++, C# or java? What
compiler/IDE is best? What would be the best approach to windows apps
- API or framework or??
What sort of program do you want to write? One practical difference
between C++ and C#/Java is that C++ does not come with a standard GUI
library while both C# and Java do. This makes writing GUI programs
much easier in C# or Java as the GUI comes built in rather than having
to learn a separate graphics library, which might not be standard in
your next job or might not work on your next target machine.

The downside of both C# and Java is that they both work to virtual
machines so they can be slower than C++. For many applications this
is not a problem, but it can be an issue if you want to factor RSA
numbers or similar.

For MS Windows C# is probably better than Java. For any other GUI
operating system then Java is the way to go. Use C++ if the other two
are too slow or if you just want a console application - "if it's not
green on black then it's not real computing".

For myself I only program on MS Windows so I use C# for GUI
applications and C++ for intensive calculations in console apps.

I use Microsoft C# Express and Dev-C++, both work well and are free.
I cannot comment on current Java environments as I have only ever used
a now-obsolete Borland environment a long time ago.

rossum
 
M

Michael

My question is would it be best to start with C++, C# or java? What
compiler/IDE is best? What would be the best approach to windows apps
- API or framework or??

Any comments appreciated.

I love C++ and use it almost exclusively. But, having said that, I'd
recommend Java.

The basic reason is that Java is a better learning language. C++ is
very powerful, and possibly a better production language, but is not
very clean. There are a lot of 'gotchas' when you're first getting
started with C++. Java is substantially cleaner, and moreover, a lot
of colleges teach it, and a lot of the Object Oriented-types use it,
so the learning materials you find are likely to be better. I haven't
used C#, so I can't comment, but my impression is that it's even a
little cleaner than Java (since it's slightly newer and had the
benefit of seeing what worked and didn't with Java), but that it is
only Windows based, and has a much smaller set of learning materials.

This is essentially the same argument that it's better to learn good
habits in Pascal and then switch over to C for production.

As for API, I used to use Swing, but there's a newer one out these
days called SWT. I haven't looked at it. And by far the best IDE is
IntelliJ's Idea, but there are some free ones (NetBeans and Eclipse)
that have the advantage of being free, and are getting better every
day.

Michael
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,774
Messages
2,569,598
Members
45,152
Latest member
LorettaGur
Top