views:

377

answers:

7

Duplicate of:

http://stackoverflow.com/questions/161288/what-would-be-the-best-book-to-read-in-order-to-really-grok-oop/161504

http://stackoverflow.com/questions/574001/what-books-do-you-suggest-for-understanding-object-oriented-programming-design-de/574619

http://stackoverflow.com/questions/455627/head-first-style-data-structures-algorithms-book

http://stackoverflow.com/questions/48337/modern-books-on-algorithms

http://stackoverflow.com/questions/302270/what-is-the-best-book-for-learning-about-algorithms

etc.

I'm looking to pick up a few books about Design Patterns and Algorithms (both analyses of existing algorithms, as well as design and implementation of my own algorithms).

Any suggestions? Programming language isn't a problem, as I'll pick it up as I go along if I don't know it, and use it as an opportunity to learn something new.

Thanks.

+1  A: 

I really like the Head First series, and their book on design patterns is no exception:

Head First Design Patterns

Nils-Petter Nilsen
+3  A: 

Headfirst design patterns is really well written and understandable. Then there is the original, Design Patterns: Elements of Reusable Object-Oriented Software, somewhat more difficult to understand. In terms of Architecture Fowler's Patterns of Enterprise Architecture is the main one.

For algorithms you might want to take a look at Cormen's Introduction to Algorithms

bingle
Nice books. Links would help.
cherouvim
+1  A: 

For design patterns entirely, I would recommend highly the all-time excellent "Design Patterns: Elements of Reusable Object-Oriented Software", from the authors who are known as the Gang of Four.

ayaz
+2  A: 

The holy bible for design patterns: Design Patterns: Elements of Reusable Object-Oriented Software

Martin Moser
Do you mean it's a work of fiction?
Wayne Koorts
+1  A: 
CMS
+1  A: 
Commander Keen
+2  A: 

For a book that explains the reasoning behind a lot of design patterns and the underlying concepts, I would suggest Bertrand Meyers's Object-Oriented Software Construction. If you learn the conceptual basis, you don't have to learn every pattern out there (but Head First Design Patterns is good for when you do want to study specific patterns).

Travis