"Jeff Peery" <[EMAIL PROTECTED]> wrote > I really don't utilize this object oriented stuff in a good way. > Does anyone have a favorite book regarding the basics/intro > to object oriented programming, how to write good OO code??
There are lots of books tackle this and it depends on your preferred learning style. My current favourites are: 1) Object oriented software Construction by Meyer Pros: The best by a mile in terms of pure OO explanations and very thorough Cons: It uses Meyers own Eiffel language and is huge(over 1200 pages). But if you want a great theoretical and practical text book it can't be beaten. 2) OOA & D by Grady Booch Pros: The classic text on OOD, gives good background on why and is excellent for those working onl large scale projects Cons:A little bit dated now(1992?) and very C++ focused (The first edition if you can find it is better in that it uses 5 languages) Also more focused on design rather than code. 3) OOP by Timothy Budd (2nd Ed) Pros: Very code oriented and targetted at smaller problems than Booch Its very short! Cons: I think the latest version only uses Java which in my view weakens its value significantly 4) OOP by Coad and Nicola Pros: A really really good book on turning a design into code, with lots of little rules/idioms (eg Be wary of objects called 'manager') Cons: A little old and very hard to find 5) Agile Software Development by Martin (I;'m in two minds about recommending this since it varies between brilliant and poor) Pros: The OOP bits are good but Martin is obsessed by interfaces and is very C++/Java focussed. Cons: There is a lot of stuff about Agile development which frankly is not good. It has lots of bad ideas, mistakes and dubious code. It's not bad for small scale programming but the Agile stuff is very poor compared to the OO stuff IMHO. But if you can borrow a copy, read up the OO bits and scan the rest its quite good. 6) Design Patterns by Gamma et al Very specific treatment of one aspect of OO but an important one. And if you read and understand how all the various patterns work you will have a good toolbox of ideas on how to do OOP (as well as the patterns themselves!) But it won't help with building a project from scratch or coming up with the initial list of classes etc. All my own views, others will no doubt have other ideas, And, of course, investigate cetus-links.org Alan G. _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor