Dependency Constraint Language
# Dependency Constraint Language

En informatique, le Dependency Constraint Language (DCL) est un langage qui permet de localiser dans le code source d'un logiciel des décisions d'implémentation qui représentent des violations à l'architecture décrite au départ.

Il permet de contrôler deux types de violations :

* les divergences (quand une dépendance existante dans le code n'est pas prévue dans l'architecture de départ) ;
* les absences (quand une dépendance existante dans l'architecture de départ n'existe pas dans le code source).

## Utilisation

Le langage DCL spécifie quatre primitives pour définir les contraintes :

* only can (divergence)
* can only (divergence)
* cannot (divergence)
* must (absence)

Il se complète par d’autres primitives pour des besoins spécifiques : access, declare, create, extend, implement, throw, annotate.

