Design patterns ? how can i understand them [closed]
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
开发者_JAVA技巧Closed 5 years ago.
Improve this questionHey guys , i'm a software Eng. student at my third year now i'm taking design patterns in a " software Design " course the problem is that those stuff are really hard to get do you know any simplified guide or videos to understand those concepts ?! my major is exam is next week and i need to prepare early , i hope you can give the simplest reference to understand them
I would check out Heads First Design Patterns by Kathy Sierra. She was the person who created the Heads First Series. It's much easier to understand compared to the Gang Of Four Book (although this is a good book), and it's set as a tutorial, and not just a book which talks about them.
I've heard that the Head First Design Patterns book does a good job at making things easy to understand if you're having issues.
The easiest way might be to search at stackoverflow..
Some links on a quick search
https://stackoverflow.com/questions/105049/what-are-the-best-design-patterns-books-you-have-read
Learning/Implementing Design Patterns (For Newbies)
How to study design patterns?
As you can see on the links Head First Design Patterns is at the top on all of them.. so I would go for that one!
The concept of design pattern is actually very easy and quick to understand.
What you may have difficulties with is the understanding of individual patterns as some of these can be relatively abstract or complicated and this difficulty may be compounded by attempts to apply a given pattern to a situation where it doesn't really fit. (That's why a key component for a properly defined pattern, as the GoF taught us, is its Applicability section).
A suggestion is to first learn a few, relatively simple / intuitive patterns (say, maybe, Adapter, Facade and Command) and to seek cases where these are applicable or not and to understand how/why they work and how they'd contribute to a better design.
Once such familiarity with simple patterns is achieved, with practice, along with the at-large-understanding of what patterns are and how they should be learned, you can then expand your panoply of patterns (and be sure to use them when appropriate: if you don't use them you loose them!).
The -pardon my pun- pattern discussed above about learning patterns, is better applied to "life-long" interest in software design than to the context of a "major exam next week" as is the case of the OP, never the less the advice may stick as well (depending on the format of the exam):
- step back, relax!, and understand what patterns are, as a concept
- learn one or two simple patterns, "in depth", do the exercices etc.
- skim through the list of patterns expected to be included in the exam, focusing on applicability and on the diagram which shows the interactions of the object/actors in the pattern.
You can start from here simple article but good for beginners
http://www.codeproject.com/Articles/28309/Design-pattern-FAQ-Part-1-Training
精彩评论