Gamasutra is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Gamasutra: The Art & Business of Making Gamesspacer
arrowPress Releases








If you enjoy reading this site, you might also want to check out these UBM Tech sites:


 

Game Programmer Books: General Programming

by Neil Gower on 07/08/09 03:10:00 pm   Expert Blogs

7 comments Share on Twitter    RSS

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.

 

There are perfectly good programmers who haven't picked up a book since they graduated, unless it was to prop up a monitor or build a shelter from Nerf darts. There are a lot of great online programming resources, but personally, I couldn't survive without my books. When I encounter a new topic, the first thing I do is track down a good book about it. Mmmm... tasty hardcover brain food.

Programming is a topic that gets a huge section at the big bookstores. Buyer beware however, not all of those books are worth your time or money (mini-rant: do nearly all computer books really have to cost over $50?). To helpGeneral programming books you avoid the duds, I'm posting short blurbs about some of the better books that have collected on my shelves over the years. Some are specific to games, other are broader programming books I've found to be relevant to game development.

To kick things off, here's a short list of solid general programming books:

Code Complete
By Steve McConnell

Code Complete is an essential book for programmers who have learned how to program, but don't have as much experience with the complete software life cycle of full-scale projects. It's filled with lots of good practices for everything from planning, to design, coding style, performance, debugging, and maintenance. The author also includes plenty of references to other good programming books to bulk up your brain.

Even if you don't agree with or adopt all of McConnell's advice, these practices show up in other people's code, so it's good stuff to know.

In short: The professional programmer's tour guide.

Design Patterns
By Gamma, Helm, Johnson, and Vlissides

This one is a classic for object oriented programming (OOP). It's not for beginners, but if you've already got the basics of OOP, Design Patterns will save you from reinventing the wheel.

DP is presented as a catalogue of proven OO design solutions. Some seem obvious at first glance, but if you really dig into them they reveal a lot of depth in the details. Even if you rarely do any heavy duty design work, being familiar with the design patterns in this book will help you find your way around other people's code more easily.

In short: Read it, or else.
   (...or else skim it, it's good as reference too)

Refactoring: Improving the Design of Existing Code
By Martin Fowler

Refactoring is a great book that describes how to properly refactor code. Sketchy programmers  have been known to use refactoring as an intimidating word to smokescreen coding by trial-and-error and "rewriting your code to look like mine". Don't let this put you off, real refactoring is a good thing, and Fowler wrote the book on how to do it right.

Proper refactoring is about safe transformations you can apply to code to improve its quality. It's a great strategy for those situations when you've inherited a horrible code base (or let's face it, maybe you helped build it), but can't afford to throw it out and start again. Refactoring is not just for salvaging bad code though, it can also be applied to good code to make it better. This book is similar to Design Patterns, in that it provides a catalogue of refactorings for you to use. Good for reading, great for reference.

In short: Friends don't let friends talk about "refactoring" without reading this book first.

That's it for the general purpose programming books. Got one to add to the list? Please share below!

Related Jobs

Pixar Animation Studios
Pixar Animation Studios — Emeryville, California, United States
[05.24.19]

Animation Tools Software Engineer
Disbelief
Disbelief — Chicago, Illinois, United States
[05.24.19]

Senior Programmer, Chicago
Disbelief
Disbelief — Chicago, Illinois, United States
[05.24.19]

Junior Programmer, Chicago
Deep Silver Volition
Deep Silver Volition — Champaign, Illinois, United States
[05.24.19]

Senior Animation Programmer





Loading Comments

loader image