Markus fbb12b53ba Work towards #56: Splitting up the README
I did the job and splitted up the readme, hopefully everything was
splitted correctly...
2015-08-13 23:54:40 +02:00

19 lines
660 B
Markdown

---
layout: pattern
title: Specification
folder: specification
categories: pattern_cat
tags: pattern_tag
---
**Intent:** Specification pattern separates the statement of how to match a
candidate, from the candidate object that it is matched against. As well as its
usefulness in selection, it is also valuable for validation and for building to
order
![alt text](./etc/specification.png "Specification")
**Applicability:** Use the Specification pattern when
* you need to select a subset of objects based on some criteria, and to refresh the selection at various times
* you need to check that only suitable objects are used for a certain role (validation)