I guarantee, you already know these patterns. However, the patterns terminology is useful, if only to communicate the concepts quickly. Builder An object used to build another object. The most obvious implementation of this pattern in the framework is StringBuilder. It can be quite useful to have a builder in cases where what you're constructing is complex and you don't need to read from the constructed object as you're going. (If you do, just using the object's own method is often simpler.) The Builder pattern is used in fluent interfaces to support method chaining. In this case, the builder constructs...