What Design Patterns are mostly used in Web/Enterprise Applications?

design-patterns, enterprise, web-applications

Solution

I use Inversion of Control a lot.

In particular, when persisting / loading objects. It helps when we're not sure if the data is going to come from a database, a web service, or some other mechanism.

By using an interface and allowing multiple sources to expose a simple API for save / retrieving and allowing the object itself to know which API calls to make we end up with a very easy to manage architecture.

One example of this is here.

Problem

What are some of the most common Design Patterns that are used in Web/Enterprise Application and why they are used ? Note: Answer to why part should be based upon listing the problems which they tend to solve ?

Original source

Related problems