views:

115

answers:

4

Hi,

I am trying to figure out what 'topic' this is called, so I can learn more about it.

Basically, I'm talking about designing my applications's architecture. I'm not talking about algorithms. More like -- this class should have these methods and these instance variables, and communicate with this class in this way, this class should have these responsibilities etc.

Can anybody tell me what the name of this topic is called and how I can get better at doing this?

Thanks.

A: 

It sounds like you're thinking about Design Patterns. The book you want is GOF.

jbrennan
Design Patterns might be half of what he's looking for, but the other half, I think, is recognizing how systems interact and where design patterns are applicable. This is mostly gained from experience in building systems, I think.
Stefan Kendall
A: 

Object oriented design, I think is what you're talking about. that or else Design Patterns.

Paul
+4  A: 

Software Architecture

(of which Object-Orient Design is one technique, and Design Patterns is a sub-technique - powerful techniques by all accounts, but not the only way.)

I hate to say it, but the best way of getting better at it, is to do it (which isn't to say you shouldn't study it.)

Oddthinking
+1 for getting your hands dirty yielding the best experience, but design patterns are not a subset of object-oriented design.
Roger Pate
Roger, I concede that you are technically correct. Design patterns are not strictly limited to OOD.However, I would propose that the most common usage of modern design patterns follows lead from the Gang Of Four book: "Design Patterns: Elements of Reusable Object-Oriented Software" which is explicitly limited to the domain of OOD.
Oddthinking
Don't get me wrong, thought. There is a lot more to design than picking a design pattern! Design Patterns is not a sub-class of Design. It is a tool in the design toolbox.
Oddthinking
+3  A: 

It is called "Software Design" and if you want to be better at it, you may start reading about "Design Patterns" but please, consider that these patterns are templates, not actual designs. Good luck.