By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
457,875 Members | 1,524 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 457,875 IT Pros & Developers. It's quick & easy.

C++ or C#..?

P: n/a
Hi,
I am new to programming...which language should I study
to get a hot job. is it C# or C++...?
Thanks In advance
Sobin
Dec 28 '07 #1
Share this Question
Share on Google+
17 Replies


P: n/a
Hi,

A hot job????

Sitting in front of a computer surrounded of a bunch of nerds (not hot at
all) , do you call that a hot job?

--
Ignacio Machin
http://www.laceupsolutions.com
Mobile & warehouse Solutions.
"Sobin" <so***@live.inwrote in message
news:u1**************@TK2MSFTNGP05.phx.gbl...
Hi,
I am new to programming...which language should I study
to get a hot job. is it C# or C++...?
Thanks In advance
Sobin

Dec 28 '07 #2

P: n/a
Sobin wrote:
I am new to programming...which language should I study
to get a hot job. is it C# or C++...?
What answer do you expect to get in a C# group ?

My impression is that the demand for C# is rising and the demand
for C++ is dropping, so C# seems as a good choice.

But I would expect C++ to be in demand for many years, so it
is not a bad choice either.

Arne
Dec 28 '07 #3

P: n/a
Sobin,

Most "hot" programming is probably done in JavaScript, be aware however that
it is like eating cookies in a bakkery, when you are used to it then you
don't like it anymore.

Just my idea adding to the already given answers.

Cor

Dec 28 '07 #4

P: n/a
I'm finding in my personal life that people wanting C#/C++ for a
position want a ton of experience before hiring. If you're leaning
towards C# see if you can't get some formal training in VB since their
hiring requirements tend to be much lower on the experience side and
if you do the .NET thing VB/C# are closely related and you won't have
wasted VB training since it translates right back to C#.

Dec 28 '07 #5

P: n/a
If you want to know both languages (which I believe you should if you
want to maximize your chances), it is probably better to learn native
C++ first as you get a better idea of what is going on "under the hood".

If you know C++, you can pick up C# easily enough.
-----Original Message-----
From: Sobin [mailto:so***@live.in]
Posted At: Saturday, 29 December 2007 4:17 AM
Posted To: microsoft.public.dotnet.languages.csharp
Conversation: C++ or C#..?
Subject: C++ or C#..?

Hi,
I am new to programming...which language should I study
to get a hot job. is it C# or C++...?
Thanks In advance
Sobin

Dec 28 '07 #6

P: n/a
"Sobin" <so***@live.inwrote in message
news:u1**************@TK2MSFTNGP05.phx.gbl...
Hi,
I am new to programming...which language should I study
to get a hot job. is it C# or C++...?
Thanks In advance
Sobin
I would learn to write C# and read C++. You should also learn the .NET
framework and become familiar with the underlying Win32/64 API as many of
the questions that arise here are directly related to how the Win32 API
operates. Also, as another responder wrote, take the time to learn VB.NET
as well since you may be able to land an entry level position using VB
quicker than with C#.

As for hot, turn the heat up in you cubicle if you want hot.

Mike.
Dec 28 '07 #7

P: n/a
"Ignacio Machin \( .NET/ C# MVP \)" <machin TA laceupsolutions.com>
wrote in news:uM*************@TK2MSFTNGP04.phx.gbl:
A hot job????

Sitting in front of a computer surrounded of a bunch of nerds (not hot
at all) , do you call that a hot job?
Oh come on... just type 'sexy nerd girl' into google and you'll find plenty
of them. They just aren't where YOU work! :)

-mdb
Dec 28 '07 #8

P: n/a

"Sobin" <so***@live.inwrote in message news:u1**************@TK2MSFTNGP05.phx.gbl...
Hi,
I am new to programming...which language should I study
to get a hot job. is it C# or C++...?
Thanks In advance
Sobin

C# and C++ are tools. You don't automatically become an accountant by learning how to move a pencil.

Yes, it's good to learn how to use tools. But what gives you the hot job is learning the business. Which business are you interested
in? (and for God's sake, please don't say "programmer").

My $0.02

Brian

Dec 28 '07 #9

P: n/a
Brian Muth <bm***@mvps.orgwrote:

<snip>
C# and C++ are tools. You don't automatically become an accountant by
learning how to move a pencil.

Yes, it's good to learn how to use tools. But what gives you the hot
job is learning the business. Which business are you interested
in? (and for God's sake, please don't say "programmer").
Well, I would safely say that I'm more interested in "software
development" than insurance, content security, or mobile CRM - all of
which have been the *business* parts of projects I've worked on.

I don't expect to be hired by anyone based on my knowledge of a
particular business. I expect to be hired by being able to apply my
experience to *any* business.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
World class .NET training in the UK: http://iterativetraining.co.uk
Dec 28 '07 #10

P: n/a
Learn both of the languages, and java, and vb.net, and Cobol (Y3K and
Y5Digits are right around the corner).

But first learn when each language is the right tool for the solution.

Also, learn to communicate that the solution you choose is right. (I
personally wish I took more psych and comm in school).

Also learn to build a team, and weed out the chaff on the team you are
given.

These will get you further than the language de jeur.
"Sobin" wrote:
Hi,
I am new to programming...which language should I study
to get a hot job. is it C# or C++...?
Thanks In advance
Sobin
Dec 29 '07 #11

P: n/a
I prefer c# these days,
it frees up so much time otherwise spent with memory management.

If you going to do c# I would start with c#,
moving from c++ to c# isnt that easy,
as theres considerable diferences wich make it harder if your well used to
c++
such as sprintf type format is totaly diferent and theres no macros or
multiple inheritence etc.

I still use c++ for embeded microcontroller stuff wich then comunicates to a
c# app on a PC.

I have no idea about relevant job opertunities though, but with c# being
relativly new they cant realistically ask for like 10 yrs experience. c++
will be around for ages but theres already lots of c++ programmers.

Im stil waiting for a better language however,
being a hardware engineer im also into vhdl wich would
be an interesting concept to make into a full blown software programing
language.

Colin =^.^=

"Sobin" <so***@live.inwrote in message
news:u1**************@TK2MSFTNGP05.phx.gbl...
Hi,
I am new to programming...which language should I study
to get a hot job. is it C# or C++...?
Thanks In advance
Sobin

Dec 29 '07 #12

P: n/a
colin wrote:
I prefer c# these days,
it frees up so much time otherwise spent with memory management.
There are also ways of making that easier in C++.
If you going to do c# I would start with c#,
moving from c++ to c# isnt that easy,
as theres considerable diferences wich make it harder if your well used to
c++
such as sprintf type format is totaly diferent and theres no macros or
multiple inheritence etc.
I don't think it will take a C++ programmer many minutes to convert
from sprintf format to String.Format and note the lack of macros
and multiple inheritance. And if he forget then the compiler will'
remind him.

I think it is worse the other way around. The things that is taken
care of the runtime in .NET and that you have to do yourself in C++.
And they do not give a compiler error. Instead they give various
runtime errors that are often very hard to locate the original cause
for.

Arne
Dec 29 '07 #13

P: n/a
"Arne Vajhøj" <ar**@vajhoej.dkwrote in message
news:47***********************@news.sunsite.dk...
colin wrote:
>I prefer c# these days,
it frees up so much time otherwise spent with memory management.

There are also ways of making that easier in C++.
im interested in the sort of thing you refer to ?

for example, I had a decision tree I wrote in c++ wich it generated from
some input data,
there was quite a bit of recusrion or loops wich had to be handled by
recognising
repeating branches and instead of going onto infinity just looping the
branch back to some equivalent point.

this meant often an entire branch would be deleted but at the time of
deletion
some of the elements in the branch may be still used elsewhere,
although elements might be used by things in the same branch wich was about
to be deleted.

with c# this is taken care of, you just simply unreference it and it
eventually deletes anything that
isnt referenced from some static point.
I had to write the code to do the same thing with my tree.
>
>If you going to do c# I would start with c#,
moving from c++ to c# isnt that easy,
as theres considerable diferences wich make it harder if your well used
to c++
such as sprintf type format is totaly diferent and theres no macros or
multiple inheritence etc.

I don't think it will take a C++ programmer many minutes to convert
from sprintf format to String.Format and note the lack of macros
and multiple inheritance. And if he forget then the compiler will'
remind him.
I remember it took me a long time to find the right page wich told me how to
print out
a simple hex dump with 2 hex digits for each byte,
I found 100s of pages wich told me how to print out the basic stuff with
String.Format but stoped short of saying how to print out exactly 2 digits.
most other things I seemed to find fairly easy.

ok I know its not dificult, its easy when you know how, but its just new.
I made the mistake of thinking it was easy transition,
instead of treating it as a new language and burying my head in a few books
for a few days.

its not a question of just noting they dont exist,
but what I meant was if your realy used to using a macro
for certain things it can be hard to code the the equivalent of the macro
template functions can be used but I find they are limited ...

for example I have several structs wich have some of the same elements and I
want to
have a function wich does the same operation on those elements for diferent
structs...
in a template function I cant access any members of a <typeunless I put a
constraint,
but then I am limited to only alowing one class, unless I am mistaken or
there is a way round this?
unfortunatly I dont have the option to add an interface to the structs
definition.

a macro would easily take care of this.
again the same for multiple inheritence, sometimes its just difuclt to
figure out how to do the equivalent.
although I think macros can be very badly misused, and multiple inheritence
could realy suck sometimes.
I think it is worse the other way around. The things that is taken
care of the runtime in .NET and that you have to do yourself in C++.
And they do not give a compiler error. Instead they give various
runtime errors that are often very hard to locate the original cause
for.
yep transition the other way is probably dificult too,
I still need C/C++ for my microcontrollers though,
its like switching to a diferent world.
and ofc its still usefull to know basic c++ if you want to do some unsafe
stuff in c#...

Colin =^.^=
Dec 31 '07 #14

P: n/a
colin wrote:
"Arne Vajhøj" <ar**@vajhoej.dkwrote in message
news:47***********************@news.sunsite.dk...
>colin wrote:
>>I prefer c# these days,
it frees up so much time otherwise spent with memory management.
There are also ways of making that easier in C++.

im interested in the sort of thing you refer to ?
Templates, smart pointers etc..
>>If you going to do c# I would start with c#,
moving from c++ to c# isnt that easy,
as theres considerable diferences wich make it harder if your well used
to c++
such as sprintf type format is totaly diferent and theres no macros or
multiple inheritence etc.
I don't think it will take a C++ programmer many minutes to convert
from sprintf format to String.Format and note the lack of macros
and multiple inheritance. And if he forget then the compiler will'
remind him.

I remember it took me a long time to find the right page wich told me how to
print out
a simple hex dump with 2 hex digits for each byte,
I found 100s of pages wich told me how to print out the basic stuff with
String.Format but stoped short of saying how to print out exactly 2 digits.
most other things I seemed to find fairly easy.
I admit that http://blog.stevex.net/index.php/str...ing-in-csharp/
is much better than the official docs.

Arne
Dec 31 '07 #15

P: n/a

"Sobin" <so***@live.inwrote in message
news:u1**************@TK2MSFTNGP05.phx.gbl...
Hi,
I am new to programming...which language should I study
to get a hot job. is it C# or C++...?
Thanks In advance
Sobin
Neither of those is a very good first language. Actually, object-oriented
*anything* isn't a good first language. Start with something that starts
executing at the top of the file and goes until it hits the bottom, maybe
python (perl and tcl also qualify but are going out of vogue, maybe ruby
would be another good alternative, even straight C wouldn't be too bad but
there's still some -- to the beginner -- magic incantations to learn to get
a program started).

Then, once you've mastered simple I/O, loops, and arithmetic, and are ready
for some file access or graphical windows, switch to an object-oriented
language or learn the O-O extensions to the language you started with.

I would basically have the following rule: don't start with any language
where "hello world" is more than five lines. Here's the C version for
reference, exactly five lines:

#include <stdio.h>
int main( void )
{
puts("Hello world\n");
}

OTOH C#:

using namespace System;
public class MyProgram
{
public static void Main(void)
{
Console.WriteLine("Hello World");
}
}

As you can see, there's a lot of extra junk that you won't learn for a
while.

Whereas PERL has no fluff:

print "Hello world\n";
Dec 31 '07 #16

P: n/a
Ben Voigt [C++ MVP] wrote:
"Sobin" <so***@live.inwrote in message
news:u1**************@TK2MSFTNGP05.phx.gbl...
>Hi,
I am new to programming...which language should I study
to get a hot job. is it C# or C++...?

Neither of those is a very good first language. Actually, object-oriented
*anything* isn't a good first language. Start with something that starts
executing at the top of the file and goes until it hits the bottom, maybe
python (perl and tcl also qualify but are going out of vogue, maybe ruby
would be another good alternative, even straight C wouldn't be too bad but
there's still some -- to the beginner -- magic incantations to learn to get
a program started).

Then, once you've mastered simple I/O, loops, and arithmetic, and are ready
for some file access or graphical windows, switch to an object-oriented
language or learn the O-O extensions to the language you started with.
Personally I agree that a simple procedural programming language
is better to start with than an object oriented one.

But it is far from universal accepted.

Arne

PS: I would prefer a language like Pascal over the dynamical typed
languages.
Dec 31 '07 #17

P: n/a
Arne
>
PS: I would prefer a language like Pascal over the dynamical typed
languages.
That's a good point. Pascal is one of the languages I've never come in
contact with, but if it makes life as simple as "(1) load IO library (2)
print something" then I imagine it would be a very good choice.
Jan 3 '08 #18

This discussion thread is closed

Replies have been disabled for this discussion.