Notions de base de la syntaxe D2

D2 est un outil moderne basé sur le texte pour créer des diagrammes clairs et lisibles. Il signifie « Diagrammation déclarative ». Dans VPasCode, D2 permet aux développeurs logiciels et aux architectes de solutions de transformer du texte de code simple en modèles visuels propres sans avoir à dessiner manuellement des formes.

Astuce :La syntaxe D2 est conçue pour être simple et facile à lire. Les formes, les connexions, les étiquettes et les groupes peuvent tous être écrits à l’aide de lignes de texte simples sans configurations complexes.

1. Formes de base et connexions

Pour créer des formes, tapez simplement leurs noms. Pour relier des formes, utilisez une flèche (-> pour une seule direction ou <-> pour deux directions).

# Connexion simple
Utilisateur -> Serveur Web : Demande HTTP
Serveur Web -> Base de données : Récupérer les données
Base de données -> Serveur Web : Retourner les résultats
Serveur Web <-> Cache : Synchronisation lecture/écriture

D2 simple connection diagram showing request and response flows between User, Web Server, Database, and Cache - Text to diagram editor - VPasCode

2. Types de formes et étiquettes personnalisées

Par défaut, les formes apparaissent sous forme de boîtes standard. Vous pouvez facilement changer le type d’icône d’une forme ou définir une étiquette personnalisée en utilisant la propriété shape propriété.

# Définition des types de formes
Client : {
  shape : person
}

Services Cloud : {
  shape : cloud
}

Base de données principale : {
  shape : cylinder
  label : "Base de données principale (PostgreSQL)"
}

Client -> Services Cloud -> Base de données principale

D2 custom shapes showing person, cloud, and database cylinder icons linked in sequence - Text to diagram editor - VPasCode

3. Définitions de classes

D2 prend nativement en charge la conception de structures orientées objet en utilisant la forme class shape.

CompteClient : {
  shape : class

  accountId : String
  emailAddress : String

  isActive() : Boolean
}

D2 class diagram displaying CustomerAccount properties and isActive method - Text to diagram editor - VPasCode

4. Conteneurs imbriqués (regroupement)

D2 permet de regrouper facilement des éléments à l’intérieur de conteneurs en utilisant des accolades standard (“{}). Vous pouvez également relier des éléments entre différents groupes en utilisant la notation pointée.

# Regroupement avec des conteneurs
Application Frontend : {
  Interface React -> Gestionnaire d'état
}

Infrastructure Backend : {
  Passerelle API -> Microservice d'authentification
  Passerelle API -> Microservice de commande
}

# Connexion entre groupes
Application Frontend.Gestionnaire d'état -> Infrastructure Backend.Passerelle API : Appel REST

D2 nested containers grouping Frontend Application and Backend Infrastructure modules - Text to diagram editor - VPasCode

5. Style et couleurs

Les couleurs d’arrière-plan personnalisées, les couleurs de trait et les styles de police peuvent être personnalisés directement dans le bloc en utilisant le mot-cléstylemot-clé.

Service A : {
  style : {
    remplissage : "#e0e7ff"
    trait : "#4338ca"
    rayon-de-bord : 8
  }
}

Service B : {
  style : {
    remplissage : "#fef3c7"
    trait : "#d97706"
  }
}

Service A -> Service B : Envoyer un message

D2 styled blocks showing custom background colors and border styles for Service A and Service B - Text to diagram editor - VPasCode

6. Feuille de mémoire de syntaxe rapide

Concept Exemple de code Ce qu’il fait
Connexion orientée A -> B Dessine une flèche pointant de A vers B.
Étiquette de ligne A -> B : Envoyer des données Ajoute du texte au-dessus de la flèche de connexion.
Flèche bidirectionnelle A <-> B Dessine une flèche pointant dans les deux sens.
Conteneurs / Groupes Serveur : { ... } Regroupe plusieurs formes en une seule boîte.
Sélection de forme forme : cylindre Transforme la boîte standard en icône de base de données, personne, nuage, classe, etc.
Commentaires # Mon commentaire Les commentaires sur une seule ligne sont ignorés lors du rendu.
Retour en haut