* Fix languages * Missed change for version number * Add language field for presentation * Revert change in README for double buffer Co-authored-by: Jackie Nim <=>
		
			
				
	
	
		
			28 lines
		
	
	
		
			766 B
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			766 B
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						|
layout: pattern
 | 
						|
title: Servant
 | 
						|
folder: servant
 | 
						|
permalink: /patterns/servant/
 | 
						|
categories: Behavioral
 | 
						|
language: en
 | 
						|
tags:
 | 
						|
 - Decoupling
 | 
						|
---
 | 
						|
 | 
						|
## Intent
 | 
						|
Servant is used for providing some behavior to a group of classes.
 | 
						|
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.
 | 
						|
 | 
						|
## Class diagram
 | 
						|

 | 
						|
 | 
						|
## Applicability
 | 
						|
Use the Servant pattern when
 | 
						|
 | 
						|
* When we want some objects to perform a common action and don't want to define this action as a method in every class.
 | 
						|
 | 
						|
## Credits
 | 
						|
 | 
						|
* [Let's Modify the Objects-First Approach into Design-Patterns-First](http://edu.pecinovsky.cz/papers/2006_ITiCSE_Design_Patterns_First.pdf)
 |