[Tutor] Question
Alan Gauld
alan.gauld at btinternet.com
Sat Jun 19 10:19:09 CEST 2010
"Independent Learner" <nbr1ninrsan7 at yahoo.com> wrote
> ~I was wondering if I should try to learn 2 programming languages
> at once, Python and C++.
No, no no! If it had been a different pair I might have said try it.
But C++ is one of the most difficult, complex and difficult
programming lamnguages out there. It is full of subtle things
that can trip you up and cause very weird and subtle bugs
that are diffficult to find. And it has similar concepts to Python
but implemented so entirely differently that studying the two
together will be an exercise in frustration.
Part of the reason why C++ is so difficult is because it is
so powerful. You have full access to the machine through
the C language elements, plus a full OOP environment,
plus a powerful generic type system. Plus it combines
static and dynamic variables with a reference model all with
slightly different syntax and semantic behaviours.
At work I hardly ever recommend that people go on language
training courses, C++ is the exception! You can learn C++
by yourself but you will need a good book and a lot of
time and patience.
> Obviously I am working on learning python right now,
> I have gotten up to Classes
Stick with Python and get comfortable with that.
Then move onto C++ as a separate and significant project
if you really feel you have a need to know it.
> there are still a lot of things I am not really fully
> comprehending, but like I said I have a pretty good idea.
Ask questions here. That's what the tutor list is for.
> ~So is it better to learn 1 programming language
> first, then learn another. Or better to pretty much
> learn them at the same time? And why?
If you had asked about Python and Object Pascal
or Ruby or even Lisp I'd have said sure, if you enjoy
comparative learning. Those languages are sufficiently
close to makle it worthwhile. (That's why I teach
VBScript and JavaScript as well as Python in
my tutor) But C++ is awash with gotchas and has
an internal object model completely different to Python.
(COBOL is another one that I'd never recommend
as a comparative languiage!)
--
Alan Gauld
Author of the Learn to Program web site
http://www.alan-g.me.uk/
More information about the Tutor
mailing list