Re: Any tips?
On Wednesday, March 6, 2013 7:27:51 AM UTC, Saeed Amrollahi wrote:
On Wednesday, March 6, 2013 5:26:40 AM UTC+3:30, eli m wrote:
I am coming to C++ from python. Do you guys have any tips
for me? Examples: How to learn it effectively, what not to
do, etc.
[...]
2. You should never learn "Modern" C++ with a book that was written before
1997. My recommendations:
1) Andrew Koenig & Barbara Moo. Accelerated C++, Addison-Wesley, 2000.
2) Bjarne Stroustrup. Programming: Principles and Practice in C++,
Addison-Wesley, 2009.
3) Bjarne Stroustrup. The C++ Programming Language, Addison-Wesley,
2013. (Coming soon)
4) Stanley Lippman, Josee Lajoie & Barbara Moo. C++ Primer, 2012.
5) Bjarne Stroustrup. The C++ Programming Language, Addison-Wesley,
special edition, 2000.
At this time, the point is: use C++98 or C++11, the books
1, 2 and 5 are based on C++98 and 3 and 4 based on C++11.
of course there other good books. I believe the book #1 and #2
are really good. #1 is concise and #2 is very detailed about
programming not C++.
The choice between 1 and 2 will depend partially on how much
experience you have programming, in general. If you know no
programming, I would recommend 2, regardless of what language
you ultimately want to program in, because that's what it
teaches. If you're already an experienced programmer, 1 is
a lot shorter, and will still present everything you need to
know that isn't general programming skills.
[...]
4. Use modern C++ programming environment.
My recommendation:
- Visual Studio 2012, Visual Studio 2010 (Windows)
- Code::Blocks (Linux/Ubuntu)
I don't know. I use Visual Studios 2012 (at present) under
Windows, because that's my employers standard; I've always used
vim, bash and makefiles under Unix. And the vim, bash and
makefiles environment is far more productive than the Visual
Studios environment. If you're just starting programming,
something like Visual Studios is probably a pretty good idea, so
you don't have to learn everything at once, just to compile
hello world. But if you are already an experienced programmer,
it's probably worth your while to learn how to use more powerful
tools; there's just so much you can't do in Visual Studios (or
in any of the IDE's I've used under Linux, but I've not tried
any new ones recently).
--
James