Need advice about brushing up on my C++

K

Kevin Carne

First, Merry Christmas. I have been doing intensive Java programming for two years in school
(no choice on the language), but now I need to return to C++ because my resume is filled with
it both in Windows and Unix and I need work because I am graduating in a few months.

Instead of just reading books to refresh my memory, I'm going to build a large (4 month)
project that encompasses all the C++ material. I think this is a better way of learning and
you can use it on your resume. Do you experts agree, or should I stick with the books?

Secondly, looking at hotjobs, dice, etc.., there seems to be 3 camps for C++ programmers. 1)
The unix camp. 2) the Win 32 camp. 3) the .NET camp. Which one of these camps do you
recommend developing an application for because there is no time to develop the application
for all 3. And if it is the Unix camp, which version is the most popular? And should I avoid
the libraries that are only available one platform?

Finally, any tips for passing the job interview concerning C++? My last job lasted 6 years
and I have been in school for 2 so it's been a while since I had to interview for a job.

Any help from the experts would be most appreciated. Thank you in advance.
 
C

carlmuller

Kevin said:
Secondly, looking at hotjobs, dice, etc.., there seems to be 3 camps for C++ programmers. 1)
The unix camp. 2) the Win 32 camp. 3) the .NET camp.

Well, having looked at .net for a few hours it doesn't seem to have
very much in common with C++. The standard template library is
deprecated and there are gcnew keywords. The "purist" C++ will be
command-line code which should run in either unix or win32 or other
systems, and that is often what interview questions (and this
newsgroup) are about.
 
W

W Marsh

Well, having looked at .net for a few hours it doesn't seem to have
very much in common with C++. The standard template library is
deprecated and there are gcnew keywords. The "purist" C++ will be
command-line code which should run in either unix or win32 or other
systems, and that is often what interview questions (and this
newsgroup) are about.

C++ under .NET (usually called "Managed C++") doesn't resemble usual C++
much at all - definitely not a good way to brush up on your general C++
skills. Since memory is managed, strange new keywords and methodologies
are introduced, standard libraries are mixed in with the platform
libraries and the code isn't at all portable or general, it would
probably damage your knowledge of C++ to code under this platform.
 
P

puzzlecracker

Kevin said:
First, Merry Christmas. I have been doing intensive Java programming for two years in school
(no choice on the language), but now I need to return to C++ because my resume is filled with
it both in Windows and Unix and I need work because I am graduating in a few months.

Instead of just reading books to refresh my memory, I'm going to build a large (4 month)
project that encompasses all the C++ material. I think this is a better way of learning and
you can use it on your resume. Do you experts agree, or should I stick with the books?

Secondly, looking at hotjobs, dice, etc.., there seems to be 3 camps for C++ programmers. 1)
The unix camp. 2) the Win 32 camp. 3) the .NET camp. Which one of these camps do you
recommend developing an application for because there is no time to develop the application
for all 3. And if it is the Unix camp, which version is the most popular? And should I avoid

Kev,

A few friendly advices:

If you're asking these type of questions, it obviously shows your
indecisiveness as well as lack of adequate preparation for corporate
environment, where former is discouraged, and latter recognized.
Brushing up on your programming as well as language skills is, by all
means, not knowing nor mastering it. Landing a good job requires the
mastery of the language, systems designs, algorithms, methodologies
(that included patterns), etc.
If you're still young and not in the great need to support yourself,
family, etc., go to grad school and get involved in graduate level
research, projects targeting software design and entire cycle; this
will also permit you to work more on independent projects as well as
perhaps doing a more specialized internship part-time. Let me
illustrate from my personal example:

When I landed my first job, company software was distributive
multiplatform. Additionally to knowing, or rather be an expert, in
programming language(s) and os methodologies (that is, concurrent
programming, synchronization, threads - all in depth), one needed to
know scripting (bash, perl, nt dos scripting), awk, sed, gdb, vi,
regular expressions, .net platform (as well as C#) in-house software
solutions, eclipse (really thoroughly), Data bases (sql,
store-procedures, etc) - I can go on and on. List is inexorable. It
takes practice, persistence, perseverance.

If you're reluctant, take your time - you will be rewarded handsomely.
Do not take dead- end job, just because it provides an ok income with
no career and professional growth where your skills can be meaningful
and incremental.

This newsgroup is a good start by the way.
 
A

Axter

Well, having looked at .net for a few hours it doesn't seem to have
very much in common with C++. The standard template library is
deprecated and there are gcnew keywords. The "purist" C++ will be
command-line code which should run in either unix or win32 or other
systems, and that is often what interview questions (and this
newsgroup) are about.

Using the VC++ .Net compiler you can compile unmanaged C++ code.
The VC++ .Net compiler does NOT have the standard template library
deprecated.
There is no longer support for the NON-Standard Template Library which
never was part of the C++ standard in the first place. IMHO, this is a
good thing, because it helps to reduce developement of code that is not
portable, and that is undefined.
VC++ 7.1 (.Net - 2003) is a more C++ compliant compiler then the GNU
3.x GNU compiler.

There are many employers who ask for a .Net programmer, but they don't
really want a manage C++ programmer. What they really mean is that
they want a C++ programmer that knows the VC++ .Net IDE.

So when you look at the .Net camp, check to see if the employer is
really looking for a manage C++ programmer, or unmanage C++.
Generally speaking, unmanage C++ is referring to regular standard C++
developement.

I recommend doing a project using the .Net - 2003 compiler and the GNU
3.x compiler that is portable in both windows and Linux/Unix. Look for
a project that requires multithreading, synchronization, and sockets.
You can help keep your program portable by using the boost library. It
has portable multithreading and synchronization libraries.
Make sure you try to include templates and STL coding in your project
to help you get familiar with the syntax and proper usage.
 

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

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,007
Latest member
obedient dusk

Latest Threads

Top