C or C++

Ye' old general discussion board. Basically, for everything that isn't covered elsewhere. Come here to shoot the breeze, shoot your mouth off, or whatever suits your fancy.
This forum is not for asking programming related questions.

Moderator: General Moderators

User avatar
shiznatix
DevNet Master
Posts: 2745
Joined: Tue Dec 28, 2004 5:57 pm
Location: Tallinn, Estonia
Contact:

C or C++

Post by shiznatix »

I want to learn one of them because its compiled and what have you so ya. Which should I learn though? Really I just want to know the one that is most 'in demand' and would make me a more valuable employee.
User avatar
n00b Saibot
DevNet Resident
Posts: 1452
Joined: Fri Dec 24, 2004 2:59 am
Location: Lucknow, UP, India
Contact:

Post by n00b Saibot »

shiznatix wrote:Really I just want to know the one that is most 'in demand' and would make me a more valuable employee.
Java :P
User avatar
shiznatix
DevNet Master
Posts: 2745
Joined: Tue Dec 28, 2004 5:57 pm
Location: Tallinn, Estonia
Contact:

Post by shiznatix »

gah I have been trying to avoid Java but i suppose you may be correct.
User avatar
Mordred
DevNet Resident
Posts: 1579
Joined: Sun Sep 03, 2006 5:19 am
Location: Sofia, Bulgaria

Post by Mordred »

If you want to get seriously into programming, learn different paradigms, not just languages.
If you know OOP with PHP5, C++ or Java will offer little new.
Since PHP is like C in another skin, you'll find the C syntax familiar, but the actual coding frustrating (ya have to define them variables, you know ;)
For a really mind-opening experience try LISP (or rather Scheme, as the academics prefer it AFAIK) and/or PROLOG -- they are not just different languages, but totally different programming worlds.
Then go back to PHP and start using lambda functions and generated code like real men do ;) (Just kidding, hey)

To answer your question directly - if you have to choose betwen C and C++, go for the ++.
alex.barylski
DevNet Evangelist
Posts: 6267
Joined: Tue Dec 21, 2004 5:00 pm
Location: Winnipeg

Post by alex.barylski »

Java developers are high in demand, but most jobs which seek Java developers also seek a minimum of 4 years post-secondary schooling, in addition to job experience.

So although learning Java wouldn't hurt, you may find it difficult to actually get a job programming in Java.

C/C++ have the added benefit that they are still very common. C will let you eventually get into OS kernel design, etc. Play aorund with *nix... :P

C++ is still the most widely used application programming langauge for desktop environments, although C# is slowly gaining ground, it still has a ways to go before it topples C++ stance on the market share.

C++ is quite complex...it's like C (which is complex in it's own right) but with the added complexities of advanced design pattern concepts, best practices, etc...

There are many ways of doing one thing and each has advantages over the next...Smart pointers, Templates, Libraries, Functors, Delegates and so on...

Of course the power you unleash when you learn C++ is unparalelled in any language (why it remains popular so many years later) it's learning curve as a whole is larger than any existing language (also why it remains popular).

You can be as close to the machine as a system language like C or almost as abstract as PHP, infact it's sometimes more abstract. Good C++ developers are truely inspiring people to learn from and often have amazing insight. There are some kick bum libraries around in C++ which capitalize one some cool, but not common techniques of C++ compiler design.

Also, I wouldn't count on getting a job developing C++ software anytime soon...although like Java or C it wouldn't hurt to have some experience on a resume...

Of course these are just my experiences and opinions on this subject :)

p.s-This topic has sooo been beatin to death :P You shoudl search for this topic I'm sure you'll find something more :)

Cheers :)
timvw
DevNet Master
Posts: 4897
Joined: Mon Jan 19, 2004 11:11 pm
Location: Leuven, Belgium

Post by timvw »

In my experience you're better with C# if you're willing to relocate to Switserland... Virtually every shop i know is having difficulties finding qualified developers...
User avatar
Weirdan
Moderator
Posts: 5978
Joined: Mon Nov 03, 2003 6:13 pm
Location: Odessa, Ukraine

Post by Weirdan »

As Mordred said, if you're after learning something new and different, try to learn new paradigms. Lisp, Haskell, Fort. ObjectiveC might be interesting too.

As for the market demand, Java and C# hold their position.

Learning some ancient languages like Fortran, Ada and Cobol may get you some interesting (money-wise) jobs without virtually any competition.
AngusL
Forum Contributor
Posts: 155
Joined: Fri Aug 20, 2004 4:28 am
Location: Falkirk, Scotland

Post by AngusL »

I'd say C++ if you're starting off, then C if you feel the need. C does not lead nicely onto C++, like many seem to believe, certainly not if you've got any degree of proficiency so that you can see beyond the superficial.

I'd also like to second the vote for Haskell. I'm getting the hang of it just now. It's very different to anything else I've used, and seems to be good for some uses (complex mathematical functions have code reduced by an order of magnitude or more over C in my experience).

Oh, and a .NET language might be good, just for kicks. ;)

I think that would give a good base in compiled languages (albeit .NET is JIT :lol:).
User avatar
MrPotatoes
Forum Regular
Posts: 617
Joined: Wed May 24, 2006 6:42 am

Post by MrPotatoes »

C++, just for the strings and OOP. C is great but awful to beginners. doesn't leave much in terms of being 'nice' to you lmao!

with C/C++ tho there are still alot of jobs out there. they are just more selective. so if anything learn an assload of languages. once you learn C++ and C you can take anything on within hours. i was first taught C/C++ then i thaught myself PHP in a week and C# in less than 4 hours. HTML and CSS was hoenstly trivial.

then come the API's. so many more for C/C++ which in turn make you look more tasty to an employer. DIrectX (*UGH*), OpenGL (*YAY*), most physics and AI stuff (faster in these) and most shader languages. jut do it man. just do it
User avatar
Weirdan
Moderator
Posts: 5978
Joined: Mon Nov 03, 2003 6:13 pm
Location: Odessa, Ukraine

Post by Weirdan »

once you learn C++ and C you can take anything on within hours.
Not really. Try some of the languages I mentioned... C/C++ background doesn't help much when learning them.
timvw
DevNet Master
Posts: 4897
Joined: Mon Jan 19, 2004 11:11 pm
Location: Leuven, Belgium

Post by timvw »

AngusL wrote: I think that would give a good base in compiled languages (albeit .NET is JIT :lol:).
With ngen you can precompile the .Net code... Opposed to regular JITted code that only lives in the memory this results in native instructions that are persisted on disk (so you reduce the amount of code that needs to be compiled @runtime).
User avatar
MrPotatoes
Forum Regular
Posts: 617
Joined: Wed May 24, 2006 6:42 am

Post by MrPotatoes »

Weirdan wrote:
once you learn C++ and C you can take anything on within hours.
Not really. Try some of the languages I mentioned... C/C++ background doesn't help much when learning them.
well i had a background in these for 2 years before i started anything else. everything else came really easy. but then again i was programming in these two like crazy.

reason i say what i said is because alot of the programing paradyms come from either of these. OOP, structs, namespaces, coding conventions and such
User avatar
Weirdan
Moderator
Posts: 5978
Joined: Mon Nov 03, 2003 6:13 pm
Location: Odessa, Ukraine

Post by Weirdan »

everything else came really easy.
...because everything else you tried was very similar to those two.
User avatar
Jenk
DevNet Master
Posts: 3587
Joined: Mon Sep 19, 2005 6:24 am
Location: London

Post by Jenk »

You could always give COBOL a whirl.. or the insanely restrictive RTF (Report Format Tables) if you have a spare z/os machine knocking around..
thallish
Forum Commoner
Posts: 60
Joined: Wed Mar 02, 2005 11:38 am
Location: Aalborg, Denmark

Post by thallish »

You could also go with Python while it is not compiled it is very neat :wink:
Post Reply