Programming Concepts

Butcher? Really? :confused: I would say it's certainly less constrained, but it's entirely possible to write C++ code using precisely the same principles as the more restrictive OO languages..

Blimey o riley gov'na. I put my hands up. C++ is a fantastic and extremely powerful language. I am very familiar with it, its just not the best to learn OOP in. That is why somebody else in this thread is talking about Java.
 
Is there any specific reason you're recommending the 2 series over the 3 series? I was looking more towards 3 for future-proofing and not really having to make the transition, but is there a reason I should avoid learning 3 or anything I should really be looking out for?
Thanks. :)

It comes down to whatever you want to achieve with the Language, but I can safely say that Python 3 has no way near the amount of library support that Python 2 has. For example, Pylons, Django, py2exe, PIL and PyGTK don't work on Python 3.

All the above modules are excellent, especially py2exe. Which you may find extremely handy should you want to create a straight forward .exe file.

Most tutorials seem to talk about Python 2, don't think I've seen any for Python 3 yet, though I've not looked.

But even if you do go with Python 2, I can't see it being too much of a hassle porting over your programs. Only problems that you'll have is if you are using modules that don't support Python 3 yet.

More on the Python 2 and 3 matter can be found here: http://wiki.python.org/moin/Python2orPython3
 
Well keep it mind some introductory material is written rather poorly (in respect to who the target audience is). The authors of that book are exceptional programmers themselves but their line of work is focused on how to teach the subject and they do it well. Have you had time to check out the introductory chapters in that book? I promise it doesn't introduce a concept without having explained it (for example the main() method isn't explained for ages because it introduces concepts such as objects, arrays, visibility and static). They almost make it too easy :)

If you do have problems, like I said, feel free to ask me in there. I worked through the whole book as a first year undergraduate so can probably offer guidance.

Edit

It's worth noting that Java often requires a fair amount of syntax to express some things. I don't want to confuse you but the purpose of this is usually to prompt logical errors at compile time, not run-time. You shouldn't let this daunt you; once you understand the concept its child's play and good that it's in place.

Thanks for clarifying, that was helpful. :)

JimAroo said:
It comes down to whatever you want to achieve with the Language, but I can safely say that Python 3 has no way near the amount of library support that Python 2 has. For example, Pylons, Django, py2exe, PIL and PyGTK don't work on Python 3.

All the above modules are excellent, especially py2exe. Which you may find extremely handy should you want to create a straight forward .exe file.

Most tutorials seem to talk about Python 2, don't think I've seen any for Python 3 yet, though I've not looked.

But even if you do go with Python 2, I can't see it being too much of a hassle porting over your programs. Only problems that you'll have is if you are using modules that don't support Python 3 yet.

More on the Python 2 and 3 matter can be found here: http://wiki.python.org/moin/Python2orPython3

Again, thanks for the information. If the transition between the two would not be difficult, then I can see the reasons for starting out with Python 2 and moving on from there, considering some of those libraries sound like the kind of thing I would eventually like to use (of course, by then, they may well have been ported to Python 3).

To everyone who has replied, I'm going to look in to these languages and the available tutorials in a bit more depth before I make any decisions. I am very grateful for the help you're providing, it is very much appreciated. :)
 
Blimey o riley gov'na. I put my hands up. C++ is a fantastic and extremely powerful language. I am very familiar with it, its just not the best to learn OOP in. That is why somebody else in this thread is talking about Java.

Haha fair enough mate. It is of course down to the choice of the person learning the languages+principles to decide what they want from it, but for the OP I can see your point :)
 
Back
Top Bottom