good C++ book/reference

19 Feb 2011

Hello, I've been teaching myself programming for the past year...I went through Daniel Schifmann's Learning Processing book. I've also been learning Arduino...I know this stuff is basically C, which is what we use on mbed...but I'm having a real hard time figuring out these programs that I see here. I understand about 50% maybe... I'm a visual artist...I suck at math and logic and everything. Is there a book out there for me that would help me better understand how to program for mbed? I want to understand how to implement APIs, how to build a library, I need a reference for new symbols and methods I see...something a little more "contemporary" than the 2003 book, Thinking in C++...something that is aware of Web 2.0 or the Internet of Things idea....

Any recommendations?

Thanks!

21 Feb 2011

For a general book, you might look at "Accelerated C++". For references, I personally like the O'Reilly books "C in a Nutshell" and "C++ in a Nutshell". Both of the O'Reilly books can be previewed on Google Books.

One thing to keep in mind about learning to program computers is that many book/etc. are more focused on teaching the basic syntax of any given language, as opposed to "programming concepts". For syntax, you really only need a decent reference manual, and you can pick it up fairly quickly. However, if you want to learn programming concepts, you need to look at materials more targeted at teaching computer science.

If you have the time and inclination to learn this, take a look at this online set of lectures from MIT: http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00-introduction-to-computer-science-and-programming-fall-2008.

It won't teach you C/C++, since it uses Python. And it's not a course on learning Python - it teaches how to think like a programmer. Once you understand that, you can translate the concepts to pretty much any programming language.