Patterns
A pattern is usually defined as a solution to a problem in a context. If your context does not match the context of the pattern you will probably not be able to use it. Patterns can be combined. They also have intrinsic strengths and weaknesses that need to be evaluated in the context of your project. There are also some common Antipatterns that should be avoided.
Have you used patterns that are not described here? Please contribute your experiences!