Jump to content

  • Log In with Google      Sign In   
  • Create Account

Interested in a FREE copy of HTML5 game maker Construct 2?

We'll be giving away three Personal Edition licences in next Tuesday's GDNet Direct email newsletter!

Sign up from the right-hand sidebar on our homepage and read Tuesday's newsletter for details!


We're also offering banner ads on our site from just $5! 1. Details HERE. 2. GDNet+ Subscriptions HERE. 3. Ad upload HERE.


C++ Books?


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
15 replies to this topic

#1 helloBenjamin   Members   -  Reputation: 87

Like
0Likes
Like

Posted 07 April 2011 - 10:21 PM

I understand that my 16th birthday is coming soon, on the 19th of April. I'm pretty spoiled about this.. Of course, I want a car programming books. I was wondering if I could get some suggestions, based on this:

  • I'm looking for hands-on, thorough books that teach the essentials to skillful usage of C++. Maybe something from Bjarne Stroustrup, or likewise ? http://www2.research.att.com/~bs/homepage.html
  • I want to get into modern computing (threading/concurrency), and learn information about the 'latest-and-greatest' practical C++ programming. C++0x? Boost?
  • It would be extremely handy to have books about low level craft. They should explain essential knowledge about parsing, compiling, linking etc. I want to write a special resource compiler which is compatible with GCC/MinGW object files.

If you also know of good online resources about these, please let me know!

Thanks in advanced.


Sponsor:

#2 Servant of the Lord   Crossbones+   -  Reputation: 20255

Like
1Likes
Like

Posted 07 April 2011 - 11:05 PM

This doesn't quite fit in the categories you requested, but I'd recommend Code Complete (2nd Edition). It's one of the books that I really feel took me across the vast chasm from a beginner to a intermediate programmer. It's a great book and teaches proper coding practices, with examples in C++, Java, and SmallTalk - I only know C++, but I understood all the examples perfectly fine. It's a very valuable book - quite probably the most important programming book I've read.
You can go through the book skipping around to the parts that interest you - it's mostly non-linear. I just wouldn't call it 'hands-on', but I would call it a treasure trove of valuable knowledge and wise advice that almost instantly enhances your code as you choose to apply it bit by bit. It is a programming goldmine.
It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.
All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.
Of Stranger Flames - [indie turn-based rpg set in a para-historical French colony] | Indie RPG development journal

[Fly with me on Twitter] [Google+] [My broken website]

[Need web hosting? I personally like A Small Orange]


#3 helloBenjamin   Members   -  Reputation: 87

Like
0Likes
Like

Posted 07 April 2011 - 11:50 PM

@Servant of the Lord
Okay, I started reading reviews about that book. Thank you for showing me this! It's not at a high price, and it looks great. I'll definitely buy a copy.

#4 e‍dd   Members   -  Reputation: 2105

Like
1Likes
Like

Posted 08 April 2011 - 02:40 AM

For C++:
  • "Accelerated C++" by Koenig and Moo is an excellent first book IMHO. I would recommend this to anyone that wants to really understand what C++ is all about.
  • Followed by stuff from Scott Meyers and/or Herb Sutter.
  • Josuttis' "The C++ Standard Library" is usually the first reference I reach for.

Stroustrup's "The C++ Programming Language" is also a valuable reference, but it might be worth holding off until the new edition comes out as I imagine will it contain content on C++11 features.

For concurrency and threads:
  • "Programming with POSIX Threads" by Butenhof is very good for the learning the ins and outs of nitty-gritty threading primitives. The boost threads API is rather similar to POSIX threads, so it's possible to play along even on Windows, I imagine. But it's probably easier to work through it on Linux or Mac OS X.
  • For higher level concurrency, "Patterns for Parallel Programming" by Mattson et al is rather good, even if it tends to repeat itself a bit.
  • Shavit's "The Art of Multiprocessor Programming" is also good, I'd say. It's rather heavy on theory at the start, but I don't think that's a bad thing necessarily.


#5 sgt_barnes   Members   -  Reputation: 604

Like
1Likes
Like

Posted 08 April 2011 - 04:40 AM

edd² already mentioned most of the books that came to my mind when reading your post. You should definitely go for Scott Meyers, "Effective ..." series.

Some further suggestions:

"The C++ FAQ" may be interesting as a further read when you have already learned the basics of C++.

Herb Sutter has kind of a regular column at Dr. Dobbs about threading and concurrency, "Effective Concurrency". Much (if not all) of it is available on the Web. Start here, for example.

The standard read for compiler design is of course Aho, Sethi, Ullmann: "Compilers: Principles, Techniques, and Tools", aka "The dragon book".

Have fun!

#6 helloBenjamin   Members   -  Reputation: 87

Like
0Likes
Like

Posted 08 April 2011 - 08:44 AM

Okay, this is what I have chosen so far:

Code Complete 2
http://www.amazon.co.../dp/0735619670/

Effective STL
http://www.amazon.co.../dp/0201749629/

I'm not so sure about the "Dragon" book, but it does look like a good option. I'm also considering this:

A Retargetable C Compiler
http://www.amazon.co.../dp/0805316701/

I don't have Linux on my PC, so the POSIX book wouldn't be the best choice for me. What about edd's second suggestion:

Patterns for Parallel Programming
http://www.amazon.com/Patterns-Parallel-Programming-Timothy-Mattson/dp/032122811

I also looked into Thread Building blocks, but I'm most likely not going to buy it.

Now as I've been browsing amazon.com for good books, I saw plenty of GPU books. nVidia seems to have set a trend with GPU Gems. There's also Game Programming Gems, Game Engine Gems .etc I guess I should pick a game oriented book as well? The first volume of Game Programming Gems looks very comprehensive.

http://www.amazon.co.../dp/1584500492/

EDIT:
I can't be believe this! I forgot to add my regards --

Thank you so much. Keep up the suggestions, and God bless you all,
Ben

EDIT:
Woah.. Game Programming Gems is too expensive. I'm definitely keeping it off the final list. I can ask for about $150 dollars worth of stuff.

current finals ($59) + current considerations ($71) = total of $130

Also, I need to keep in mind that I have limited time to read, so there's no way I'm going to consider everything. However, I'm going to try keeping this topic going until I reach at least $125 of final choices.

EDIT:
Never mind Code Complete as a definite choice. I carefully over-viewed it's content again. I really don't think it's my level. I probably won't get it.

#7 e‍dd   Members   -  Reputation: 2105

Like
0Likes
Like

Posted 08 April 2011 - 04:04 PM

Now as I've been browsing amazon.com for good books, I saw plenty of GPU books. nVidia seems to have set a trend with GPU Gems. There's also Game Programming Gems, Game Engine Gems .etc I guess I should pick a game oriented book as well? The first volume of Game Programming Gems looks very comprehensive.

http://www.amazon.co.../dp/1584500492/


There's nothing particularly special about games programming. It just happens to be more performance orientated than a lot of other software. You can look up many algorithms as the need arises, often on the web, so while I wouldn't want to discourage you from getting something like Games Programming Gems, I'd say your money (or your parents' money ;)) could be better spent elsewhere. For instance, the first three editions (maybe more?) of GPU gems are now available for free online.

#8 helloBenjamin   Members   -  Reputation: 87

Like
0Likes
Like

Posted 09 April 2011 - 03:08 PM

All I'm getting is this:

http://www.amazon.com/Engineering-Compiler-Second-Keith-Cooper/dp/012088478X/

And possibly new computer parts.
Cheers!

#9 zee_ola05   Members   -  Reputation: 325

Like
0Likes
Like

Posted 10 April 2011 - 06:33 AM

How much programming experience/knowledge do you have? And what kind of programming are you interested in (e.g. gaming, web, software apps). These considerations may help. Posted Image

#10 helloBenjamin   Members   -  Reputation: 87

Like
-7Likes
Like

Posted 10 April 2011 - 02:11 PM

zee_ola05, don't worry. I've been programming since I was eight. age 16 - age 8 = 8 years of experience. I checked your profile, and I guarantee that I know much more than you do. Don't take that lightly.

#11 TheTroll   Members   -  Reputation: 882

Like
0Likes
Like

Posted 10 April 2011 - 03:10 PM

zee_ola05, don't worry. I've been programming since I was eight. age 16 - age 8 = 8 years of experience. I checked your profile, and I guarantee that I know much more than you do. Don't take that lightly.


The person was trying to help, by trying to find out what you know so they can recommend books that fit your experiences and you get all indigent. You really should check that attitude at the door because in the end it will not do you any good. If you are really 'all that and a bag of chips" then why are you not writing the books instead of looking to buy some?

#12 helloBenjamin   Members   -  Reputation: 87

Like
-3Likes
Like

Posted 10 April 2011 - 04:06 PM

I have nothing to lie about. What other age 15 people ask their parents for a book about compiler design on their 16th birthday? In precision, I do not own a mistake. All of the mistake here belongs to zee_ola05.

#13 TheTroll   Members   -  Reputation: 882

Like
1Likes
Like

Posted 10 April 2011 - 04:15 PM

I have nothing to lie about. What other age 15 people ask their parents for a book about compiler design on their 16th birthday? In precision, I do not own a mistake. All of the mistake here belongs to zee_ola05.


Got a bit of a chip on your shoulder for a 15 year old huh? I never said you lied. What I said is that you didn't understand what zee was saying and because you have a chip on your shoulder you took it the wrong way. I don't can't if you can write an advanced OS in assembly, that attitude of yours is just going to get you in trouble. If you ever do get a job in the dev world and you walk into a shop with that chip on your shoulder, it is going to get knocked off pretty darn fast.

See people that work in the real dev world, try to find out what people really want before going to work, they don't assume they know what the person wants or needs. So they ask questions, because we don't know it all. And that is what Zee did, he asked. Instead of answering those questions so he might be able to answer your question better, you get all upset, not because he attacked you, but because you seem to be an insecure little punk. Now that may be wrong, but that is how you are acting.

You owe Zee an apology for attacking him with not a reason. You owe the board one for your attitude.

#14 helloBenjamin   Members   -  Reputation: 87

Like
0Likes
Like

Posted 10 April 2011 - 04:57 PM

Please, Calm down. I'm treated like a bag of crap everywhere else in life, so I enjoy talking cocky every rare once in a while. Sorry.

#15 Domx   Members   -  Reputation: 159

Like
1Likes
Like

Posted 11 April 2011 - 04:54 AM

I'm surprised no one has mentioned (unless I've missed it, in that case apologies!) Effective C++: 55 Specific Ways to Improve Your Programs and Designs by Scott Myers. It's not a tutorial, though - it targets people with intermediate knowledge in C++ and helps in improving your code in many (55 actually) ways. It's a definite must read for C++ programmers. I was first told to read it by my colleagues at my first game dev job - I've been a better C++ coder ever since ;)

#16 ChaosEngine   Crossbones+   -  Reputation: 2435

Like
2Likes
Like

Posted 11 April 2011 - 05:24 AM

I'm surprised no one has mentioned (unless I've missed it, in that case apologies!) Effective C++: 55 Specific Ways to Improve Your Programs and Designs by Scott Myers. It's not a tutorial, though - it targets people with intermediate knowledge in C++ and helps in improving your code in many (55 actually) ways. It's a definite must read for C++ programmers. I was first told to read it by my colleagues at my first game dev job - I've been a better C++ coder ever since ;)


Seconded, just make sure you get the 3rd edition. And tbf, edd2 did mention books by Meyers.

As to the OP, you need to lose that attitude pretty quick. Your programming experience as an 8 year old means exactly nothing, any more than an architect would care if you played with lego as a kid.
if you think programming is like sex, you probably haven't done much of either.-------------- - capn_midnight




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS