tags:

views:

115

answers:

2

I want to learn C++ so that i can develop C++ Python modules for server-related stuff.

I'm a purely dynamic languages developer (Python, PHP, Ruby, etc). I want to learn a fast language, and if I'm going to do this, I'd rather learn a really fast language like C++. Before I even get started though, I understand that suddenly working with static types, a different syntax, and compiling code will be quite the paradigm shift. Is there any advice that a C++ dev who also has dynamic languages experience can give me to me to help me make that shift faster?

+4  A: 

I doubt there is any specific advice that can be given, other than that you must read a good book on C++ written by an authoritative author or authors - do not pick the first or cheapest one that comes your way. For a list of books see http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list - I personally would strongly recommend Accelerated C++ - it is written for people with programming experience, though not specifically for those coming from a dynamic language background.

anon
+1  A: 

Get the the books, and the tools (g++ or VC++)

In the transition from python to C++ I would recommend

  • learn the differences between duck typing and static types
  • learn the differences between the memory management of Python related to the memory management of c++.

When you know this good, you'll be able to write something without shooting yourself in the foot.

There are plenty of other different topics also, because of the multi paradigm nature of c++, but start with the basics and add to your repertoire as you need it.

daramarak