Wow. Thanks for your quick answers. I don't think IHonestly: do you understand what design patterns are?
have the time to go deep into all of the design
patterns. Do you think it is a good idea to try to
get a quick overview on what exists and than look at
certain patterns more closely? Do you think that
there is something like a top 3 of pattens?
I meanMVC, Facade maybe, Singleton probably because it's heavily overused...
are some patterns used in almost every project? Which
do you think are those?
On which should I concentrateThe GoF book isn't that thick.. :) And each pattern comes with a description about what to use a particular pattern for.
and which patterns should I study first?
So many questions....
Honestly: do you understand what design patternsI do. At least I think I do. I have read a similar book and I have tried to use Singeltons, Factorys, MVC and others in some of my projects. I do know that what you need depends on what you want to do. Maybe my question was not specific enough. I just wanted a more experienced opinion on this subject. I wanted to know if more experienced programmers have come across a special pattern more often that others. If you find a certain patten especially usefull and if you think that I should give it a closer look because it helped you in many ocasions. I am trying to get a deeper understanding of patterns but I find it hard to make the transfer from reading a book to designing the project. Thats why I wanted to ask if you hade favorites that need to be given a closer look.
In my experience, you can't begin using designThis sounds like a good advice. Thank you very much for answering.
patterns unless you have seen them in action
somewhere. Most design patterns are nothing but a
common-sense solution to an existing problem.
I would suggest you keep them aside and design your
application as you would do normally. Then take a
close look at your design. Maybe your have five
components talking to each other in dis-orderly
fashion. Time to look at Mediator pattern. Maybe you
are constructing objects of a certain Manager/Service
class repeatedly. Time to look at Factory patterns.
If you are designing a web-app, then MVC is a
de-facto pattern. Of course, doesn't mean it has to
be a web-app. MVC is a clear segragation of your
business, routing and view needs.
Give time. The patterns will chase you very soon :)
If you think that the question is not "valid" becauseAnd what if he has to transport a 20 ton something? What if he's supposedto win a dragster race? What if he's supposed to cross the Atlantic(note: I said vehicle, not car)? :)
you yould not give me an advice on a car without
knowing where I would use it than thats fine. But if
somebody told me that he just started driving I could
tell him to get a car thats easy to handle, not to
big, save and cheap :-).
And what if he has to transport a 20 ton something?Then he would not have told me that the project he needs the vehicle for is a typical "drivers school" problem and that it will not be to complex... (As I did in the first post.) :-)
What if he's supposedto win a dragster race? What if
he's supposed to cross the Atlantic(note: I said
vehicle, not car)? :)