Would learning a lower level language and coming back to C++ help me understand it and help me learn it better?

I started C++ about 2 weeks ago, and it had been going great and I had been getting a lot of the concepts down and blasting through the basics. Then as I got into the more advanced things, and some of the more high level arithmetic that goes along with it I started to hit barriers and get confused on a lot of things...which leads to me where I am now. I was thinking about going and learning a "easy" low level language such as Python, so I could learn the general programming concepts, and get a greater understanding of how programming languages are structured and what not. So when I go back to C++ I should be able to get passed the barriers, but this is just my thought. I don't know if this will actually help me or not, any advice you guys can give would be great. Thanks for any help in advance.
I learned Matlab first, then when it came time to learn C++ it was pretty easy to pick up, because I knew all of the major concepts (added ease because Matlab was built partially based on C++). If it's programming concepts that you're having trouble with, I think any language would give you some trouble. I'd suggest asking experienced programmers for help. Textbooks can't answer specific questions oftentimes, and a programmer has gone through the process of learning everything you're trying to learn now. So I'd say ask for help, and stick with C++. But it also depends on why you're learning C++ at all.
I would consider C++ a low to mid level language.

You can do really low level things with assembler instructions, you can move up quite a bit and do stuff with C, then move up even further and take advantage of C++ with all the functionality of OOP and STL stuff which has heaps of really good things.

There are lots of higher level scripting languages, here is an example of one of them:

http://linux.die.net/man/1/awk

On UNIX / Linux there is an 'awk' shell command. This is a "pattern matching action" scripting language - specify a pattern, with all lines that match the pattern - perform the action.

The patterns can be easily expressed - like it is very simple to match all lines between 'start' 'stop' patterns for example. They can also be expressed to fine detail - the syntax is like C, so the actions can be detailed as well.

This results in quite amazing stuff that can be done with 1 line of awk, that would have taken 100's or 1000's of lines of code in other languages.

The variable "level' of C++ is handy for a beginner because they can either get quite a bit done by taking advantage of the STL with simple features of the string container like concatenation with the + operator (as a very basic example) , or they can write at a lower level which quite often what is required for assignments.

Teachers often get students to write their own strcat or sort functions so they have a very good idea of how the library versions might work, rather than the trivial use of STL functionality.

As always, it depends on what you are doing, as to what level of language or which one to use - there are pros and cons for all of them.
i learned delphi in highschool, with a book called "delphi for kids" it was pretty easy and gave me an idea about the basics of programming. and since you create GUIs there by drag and drop and some mouse clicks, you also get an idea about GUIs.

in university i learned C, C++, assembler and matlab. they were all easy to get since i already knew the basics and the idea of programming is pretty much the same.

imo delphi is a really good language for learning the basics of programming, but it's not really neccessary, you can also just start with c++. It's not that difficult.

if you are at university, try to get a job after your c++ course as software developer at one of the institutes. if you are not too noobish, it's not so difficult to become a student assistant and that will improve your programming skills a lot.
Last edited on
Topic archived. No new replies allowed.