The proxy design pattern

In some applications, developers could face the need to provide access control to objects. This could be due to many reasons. Some of them include hiding implementation details, improving interaction with expensive resources, interfacing with remote resources, caching, providing lazy or eager initialization, and so on. The proxy design pattern helps to achieve these.

Note

Its purpose is to provide an interface to something else that then gets served behind the scenes to the user.

The proxy design pattern is another example of a wrapper. It is pretty similar to the decorator design pattern, but feels more basic and limited. The reason for this is that the relationship between the proxy and the wrapped object is established ...

Get Scala Design Patterns now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.