Most influential books on OO, Refactoring, Design Patterns, Architecture?
122
96.7
Aug 11, 2010
For those 'who have been there' (i.e. professional architects), what in your opinion are the most important books on these topics:
- OO (Object Oriented Programming)
- Refactoring
- Design Patterns
- Architecture (specifically Pattern Architecture)
Thanks.
80
96.3
Aug 16, 2010
OOP
Almost any book on .NET that gets beyond simple BS can take you through OOP principles. I would say OOAD is more what you are looking for. Here is my short list of more generalist books from an architecture standpoint:
-
The Object-Oriented Thought Process – Paradigm shifting
-
Applying UML and Patterns – Even if you are not using UML, there is a lot of power in this book
-
Almost anything by Peter Coad (Object-Oriented Analysis, Object-Oriented Design, Object Models: Strategies, Patterns and Applications)
Refactoring
-
Refactoring: Improving the Design of Existing Code – THE book from Martin Fowler (remember baby steps)
-
Refactoring to Patterns – Very useful to make sure you use patterns instead of having them use you
-
Refactoring Databases: Evolutionary Database Design – This one will force a paradigm shift
Design Patterns
-
Design Patterns: Elements of Reusable Object-Oriented Software – the GoF book
-
Head First Design Patterns – Easier for beginners
-
Pattern Hatching: Design Patterns Applied
Architecture
-
Patterns of Enterprise Application Architecture – Another Martin Fowler classic
-
Simple Architectures for Complex Enterprises – Easy read, very valuable
Others
-
Working Effectively with Legacy Code – Brown field and Agile, a must read
-
Clean Code: A Handbook of Agile Software Craftsmanship – I would also rank the McConnell series in this area (The Software Project Survival Guide, Rapid Development and Code Complete)
-
Designing Interfaces: Patterns for Effective Interaction Design – I also love “Don’t Make Me Think” but it is a bit more designer centric
Peace and Grace,
Greg
Twitter: @gbworld
Blog: http://gregorybeamer.spaces.live.com