aspose file tools*
The moose likes C / C++ and the fly likes Is C/C++ good languages for learning programming? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Spring in Action this week in the Spring forum!
JavaRanch » Java Forums » Languages » C / C++
Bookmark "Is C/C++ good languages for learning programming?" Watch "Is C/C++ good languages for learning programming?" New topic
Author

Is C/C++ good languages for learning programming?

Rogerio Kioshi
Ranch Hand

Joined: Apr 12, 2005
Posts: 689
Do you think C/C++ are good languages for beginners learn programming?

Thank you


SCEA 5 (part 1), SCBCD, SCWCD, SCJP, CLP, CLS
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 39409
    
  28
Their difficulty, compared to Java™ may make them better for learning.
Lasse Koskela
author
Sheriff

Joined: Jan 23, 2002
Posts: 11962
    
    5
Campbell Ritchie wrote:Their difficulty, compared to Java™ may make them better for learning.

Building on Campbell's answer, starting with C would have the benefit of being forced to learn about the technology underlying higher level language and runtime implementations such as Java, Ruby, etc. The downside is that it's relatively difficult to do interesting stuff because you're bogged down with pointers or implementing utilities that are part of higher level languages' standard libraries.

Starting with a higher level language would likely be more fun because you're able to do interesting stuff earlier. The downside there is that once you get used to working with those higher level languages it can be difficult to motivate yourself to learn about pointers and explicit memory management.


Author of Test Driven (2007) and Effective Unit Testing (2013) [Blog] [HowToAskQuestionsOnJavaRanch]
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 39409
    
  28
You want to try something like LISP or FORTH. Now those languages do make it very interesting to learn computing
alysa smith
Greenhorn

Joined: Aug 02, 2011
Posts: 3
Rogerio Kioshi wrote:Do you think C/C++ are good languages for beginners learn programming?

Thank you
well,i begin with C#,but it is so hard for me to learn.
abhay jain
Ranch Hand

Joined: Jun 03, 2011
Posts: 130
yes, thats why C is still in syllabus in schools and colleges
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 39409
    
  28
I don't think C# is a very good language for learning, least of all its newer incarnations. So much of the workings are hidden behind Visual Studio® and you don't see what is happening. You end up learning Visual Studio® rather than programming.
Hussein Baghdadi
clojure forum advocate
Bartender

Joined: Nov 08, 2003
Posts: 3479

Start with C so you will learn how things are really working under the hood. Then work on SICP.
Congrats, now you are a programmer.
Pavan Kumar Dittakavi
Ranch Hand

Joined: Feb 12, 2011
Posts: 104

abhay jain wrote:yes, thats why C is still in syllabus in schools and colleges


I second you;)
sina poores
Greenhorn

Joined: Jul 07, 2011
Posts: 20
for a begginer concepts are more important than syntax and special usage of language so i think for start c (or ++) is a good choose.
but if you want start a human friendlier language of curse pascal is my advise.
Brian Overland
author
Ranch Hand

Joined: Sep 09, 2011
Posts: 36
Hi. Brian Overland here. Sorry for the long delay in responding to this... I wish I had been on the threads much sooner... family emergencies and distractions and all that. Yeah, I know you don't want to hear it.

A quick comment on what everyone else has said. Languages such as LISP etc. are very interesting, but there is a very good reason for learning C++. In learning C++, you essentially learn everything in C (with a few extra restrictions here and there) but learn much more -- you can learn object-oriented programming for example.

In any case, together C and C++ form the basis of "the C family of languages"...

Having learned this syntax and grammar, I trust you will find that although Java and C# have their difference, they are in the same family of languages, share much common syntax, and are easier to learn if you first have C++ under your belt.

My 2 cents' worth, anyway.

Brian O.
Victor Paul
Greenhorn

Joined: Apr 17, 2013
Posts: 3
Yes c and C++ are the basic language for learning other programming languages.


Design Engineering Jobs
Billy Sang
Greenhorn

Joined: Apr 20, 2013
Posts: 15
If you already have previous programming experience then it is an excellent choice. But if you are just beginning then it isn't the best choice as the language can venture into lower level programming at times. Easier languages might be Basic, python. You can even try scripting languages such as Php or Javascipt to get familar with the programming enviorment.
naveen yadav
Ranch Hand

Joined: Oct 23, 2011
Posts: 384

how about python. very good language to start programming
Christopher McKay
Ranch Hand

Joined: Oct 19, 2013
Posts: 50

naveen yadav wrote:how about python. very good language to start programming

I, personally, am not a big fan of python, for one reason - indenting is essential to the program being able to run! This is probably good for beginners, getting into the habit of indenting code, but when I was writing in python on my Raspberry Pi, the keyboard that I was using didn't indent the right number of spaces, so I had to spend about half an hour manually going through each line of code and indenting it one space further. I would suggest starting on C/C++ as you said, but if that's to hard, I would go for Java.

One last thing, I would have suggested Ruby as a good language to learn but I think it is TOO easy to learn and might make learning lower level languages a lot harder! Like skiing/snowboarding, you want to start on the dry-slope (the lower level language e.g C++) to get your technique up to standard, and then when you move on to real snow (higher level language e.g Ruby) it is easy!
william chaple
Ranch Hand

Joined: Mar 08, 2013
Posts: 125
Hussein Baghdadi wrote:Start with C so you will learn how things are really working under the hood. Then work on SICP.
Congrats, now you are a programmer.


what is sicp.

and c++ is harder to learn in comparison to java?
Jesper de Jong
Java Cowboy
Saloon Keeper

Joined: Aug 16, 2005
Posts: 14269
    
  21

william chaple wrote:
Hussein Baghdadi wrote:Start with C so you will learn how things are really working under the hood. Then work on SICP.

what is sicp.

Did you notice that Hussein's sentence includes a link?


Java Beginners FAQ - JavaRanch SCJP FAQ - The Java Tutorial - Java SE 8 API documentation
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Is C/C++ good languages for learning programming?