Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I might as well get all of the big names out of the way.

* Design Patterns: Elements of Reusable Object-Oriented Software

* Refactoring: Improving the Design of Existing Code

* Clean Code: A Handbook of Agile Software Craftsmanship

* Code Complete: A Practical Handbook of Software Construction

And some others:

* Working Effectively with Legacy Code

* Domain-Driven Design: Tackling Complexity in the Heart of Software



You want to manage complexity, but mention Design Patterns?

I'm not a fan of this book. I've been in too many shops where it's become gospel and the code becomes an unnavigable swamp of singletons and factory classes and who-knows-what.

http://www.theserverside.com/tip/Evil-Design-Patterns-When-D...


A lot of people misunderstand that book. Design Patterns reduce complexity when used correctly. A good book to understand that is Refactoring to Patterns http://industriallogic.com/xp/refactoring/.

If you need your code to construct objects without knowing the type, then you need a factory (or other creation pattern). If you don't -- it's overkill. They are using a solution to a problem they don't have.


Any good advice can be abused.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: