26 lines
614 B
Markdown
Raw Normal View History

2016-05-31 20:12:27 +02:00
---
layout: pattern
title: Abstract Document
folder: abstract-document
permalink: /patterns/abstract-document/
categories: Structural
tags:
- Java
- Difficulty-Intermediate
---
## Intent
Achieve flexibility of untyped languages and keep the type-safety
![alt text](./etc/abstract-document_1.png "Abstract Document")
## Applicability
Use the Abstract Document Pattern when
* there is a need for dynamic properties
* you want a better way to organize domain
* you want loosely coupled system with flexibility of untyped languages
## Real world examples
* [Speedment](https://github.com/speedment/speedment)