views:

746

answers:

5

I am a rather oldschool developer with some basic knowledge of software design principles and a good background on classic (gof) design patterns. While I continue my life as such I see lots of strange buzzwords emerge:

Aspectoriented Design, Componentoriented Design, Domain Driven Design, Domain Specific Languages, Serviceoriented (SOA) Design, Test Driven Design, Extreme Programming, Agile Development, Continuous Integration, Dependency Injection, Software Factories ...

Is there good book around that I can take with me on a roadtrip while it is taking me on a trip through all (most) of the above, delivering an 10,000 foot view on modern software archiceture and desing principles and approaches.

+1  A: 

You might want to take a glance at this reading list compiled by the Stack Overflow community. In general it has decent coverage of what you are looking for. I'm partial to The Pragmatic Programmer if you are looking at any single book (though as a veteran developer you might know most of it already), but I'm not sure if it covers every paradigm your looking for; I'm actually pretty sure there isn't one definitive book which does.

akdom
+2  A: 

If you want one book to get the basics I can recommend Agile Software Development, Principles, Patterns and Practices. I think it's the best all-round book there is.

Don't let the Agile in the title scare you off. It's mostly there for the buzz-word value.

Mendelt
A: 

I'll second the "Agile Software Development, Principles, Patterns and Practices" choice.

Read the Principles of Object-Oriented Design from the same Bob Martin while waiting for receiving the book.

philippe
A: 

Try listening to the SE-Radio podcast, it contains different episodes on those topics and presents the overview and further reading, you might need if you are interested.

Gabriel Ščerbák
A: 

Structure and Interpretation of Computer Programs has a lot about abstraction and other key principles of sound design, even though it does not talk about any of the buzzwords you mention.

zoul