Adapter Pattern——Head First Design Pattern

Concept:

Converts the interface of a class into another interface the clients expect. Adapter lets classes work together that couldn’t otherwise because of incompatible interface.

This acts to decouple the client from the implemented interface, and if we expect the interface to change over time, the adapter encapsulates that change so that the client doesn’t have to be modified each time it need to operate against a different interface.

Adapter vs Decorator

Decorator: allow new behavior to be added to classes without altering exiting code.
Never change the interface.
Adapter: always convert the interface.

Facade Pattern

Provides a unified interface to a set of interfaces in a subsystem. Façade defines a higher level interfaces in a subsystem. Façade defines a higher-level interface that makes the subsystem easier to use.

Priciple——Least Knowledge
Talk only to your immediate fiends.
How to :
We should only invoke methods that belong to:
The object itself
Objects passed in as a parameter to the method.
Any object the method creates or instance.
Any components of the object .
not to call methods on objects that were returned from calling other methods!!

你可能感兴趣的:(设计模式)