[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: OT: Programming books



I wouldn't say that was a particularly off-topic question.

A very good book is Large Scale C++ Software Design by John Lakos, ISBN 0-201-63362-0

Here is a review of it:

http://www.accu.org/cgi-bin/accu/rvout.cgi?from=0au_l&file=l000736a

The main thing it teaches you is how to write a large program so that it's not a huge rat's nest, and how to make it testable, including how to write automated tests.

If you develop a real application, I strongly recommend writing a unit test for every module in the project (every class if it's an object-oriented project). You might think this is a lot of extra work but it's really not because it reduces debugging time and helps to focus your attention on the task at hand. It also helps increase the overall quality of your product.

While Lakos' book does discuss quite a few C++-specific things, much of his advice can be applied to almost any language. Particularly important is his discussion of how to measure and manage interdependencies between different components of a program.

You should also learn something about methodology and project management. I find eXtreme Programming appealing, although I usually work by myself and a lot of its stuff is aimed at small development teams. XP also emphasizes testing. There's an eXtreme Programming Wiki:

http://www.c2.com/cgi/wiki?ExtremeProgrammingRoadmap

There are also some XP books out like eXtreme Programming Explained, but I haven't read it.

The ACCU book reviews has a subject section on management:

http://www.accu.org/bookreviews/public/reviews/0sb/management.htm

and writing solid code:

http://www.accu.org/bookreviews/public/reviews/0sb/writing_solid_code.htm

Finally, I have a little stuff I've written myself you might find helpful:

http://linuxquality.sunsite.dk/articles/
http://www.goingware.com/tips/
http://www.byteswap.net/

Best,

Mike
--
Michael D. Crawford
GoingWare Inc. - Expert Software Development and Consulting
http://www.goingware.com/
crawford@goingware.com

     Tilting at Windmills for a Better Tomorrow.



Reply to: