2015-08-13 23:54:40 +02:00
|
|
|
---
|
|
|
|
layout: pattern
|
|
|
|
title: Servant
|
|
|
|
folder: servant
|
2015-08-15 18:03:05 +02:00
|
|
|
permalink: /patterns/servant/
|
2016-08-30 15:10:34 +02:00
|
|
|
pumlid: DSkn4O0m20NGLNG0G-ys63cDbv0SV7HzRUnUy-QYkSOkONKwWU4haV6JZe8pjd2nt1MYIBatAZKU1XjTVFEoYvT3by60c3erzW_qdPiL9CY_KrXB8rfz0G00
|
2015-08-20 21:40:07 +02:00
|
|
|
categories: Structural
|
2015-12-28 15:52:44 +02:00
|
|
|
tags:
|
|
|
|
- Java
|
|
|
|
- Difficulty-Beginner
|
2015-08-13 23:54:40 +02:00
|
|
|
---
|
|
|
|
|
2016-01-03 21:14:30 +01:00
|
|
|
## Intent
|
|
|
|
Servant is used for providing some behavior to a group of classes.
|
2015-08-13 23:54:40 +02:00
|
|
|
Instead of defining that behavior in each class - or when we cannot factor out
|
|
|
|
this behavior in the common parent class - it is defined once in the Servant.
|
|
|
|
|
|
|
|

|
|
|
|
|
2016-01-03 21:14:30 +01:00
|
|
|
## Applicability
|
|
|
|
Use the Servant pattern when
|
2015-08-13 23:54:40 +02:00
|
|
|
|
2015-08-15 18:03:05 +02:00
|
|
|
* when we want some objects to perform a common action and don't want to define this action as a method in every class.
|
2016-01-27 12:55:59 +05:30
|
|
|
|
|
|
|
## Credits
|
|
|
|
* [Let's Modify the Objects-First Approach into Design-Patterns-First](http://edu.pecinovsky.cz/papers/2006_ITiCSE_Design_Patterns_First.pdf)
|