Créer un projet de code de chaîne avec l'interface de ligne de commande du générateur d'applications de chaîne de blocs
Pour créer un projet de chaîne de blocs lors de l'utilisation de l'interface de ligne de commande du générateur d'applications de chaîne de blocs, vous balayez un projet de chaîne de blocs à partir d'un fichier de spécification détaillé. Le projet généré contient alors tous les fichiers dont vous avez besoin.
Contexte
init
du générateur d'applications de chaîne de blocs initialise et balaie un projet de code de chaîne prêt à l'emploi. En fonction d'une entrée simple, la commande init
peut générer des projets de code de chaîne complexes qui incluent les fonctions suivantes :
- Plusieurs actifs (modèles) et leurs comportements (contrôleurs)
- Générer automatiquement les méthodes CRUD (Créer/Lire/Mettre à jour/Supprimer) et non CRUD
- Validation automatique des arguments
- Marquage/déconversion des arguments
- Capacité de persistance transparente (ORM)
- La possibilité d'appeler des requêtes riches
Le projet généré suit le modèle/contrôleur et le modèle de décorateur, ce qui permet aux propriétés d'une immobilisation qui sont mises à jour dans le grand livre d'être spécifiées sous forme de champs typés et étendues avec des comportements et des règles de validation spécifiques. Ce modèle réduit le nombre de lignes de code, ce qui contribue à la lisibilité et à l'évolutivité.
Conditions requises
Avant d'échafauder un projet, vous devez créer un fichier de spécification d'entrée. Pour plus d'informations, voir Fichier de spécification d'entrée.
Échafaudage du projet de code de chaîne avec la commande init
ochain init -h
répertorie l'utilisation de la commande avec toutes ses options. La commande init
comporte les options suivantes :
- --cc/-c :
Nom du projet de code de chaîne. La valeur par défaut est
MyChaincode
. - --lang/-l
Le langage du code de chaîne échafaudé. Le générateur d'applications de chaîne de blocs prend en charge Typescript (
ts
) et Go (go
). Si aucune option n'est spécifiée, la langue par défaut estts
. - --conf/-f ou --spec
Chemin d'accès à un fichier de spécification d'entrée. Blockchain App Builder lit le fichier de spécification d'entrée et génère le projet échafaudé avec de nombreux outils d'aide, qui aident à réduire l'effort de développement global. Tirer pleinement parti du fichier de spécification d'entrée peut réduire considérablement le temps de développement.
Le fichier de spécification peut être au format
yaml
oujson
. Si le chemin d'accès n'est pas indiqué, il correspond par défaut au répertoire courant. Voir Fichier de spécification d'entrée. - --out/-o
Répertoire de sortie du projet de code de chaîne échafaudé. S'il n'est pas spécifié, le projet échafaudé est généré dans le répertoire courant.
La sortie est un projet de code de chaîne Typescript ou Go entièrement contenu, léger et évolutif.
- --root/-r
Valide et obligatoire uniquement pour Go. Répertoire racine dans la variable GOHOME pour vos codes de chaîne Go. La valeur par défaut est
example.com
.
my-mac:~ name$ ochain init --cc MyNewTsProject --lang ts --conf spec.yml
Valeurs par défaut
Si aucune option n'est spécifiée dans la commande ochain init
, le nom du projet échafaudé est MyChaincode
et la langue est TypeScript.
Le fichier MyChaincode.model.ts
ne contient qu'une seule ressource, appelée MyAsset
, avec une propriété nommée value
. Le fichier MyChaincode.controller.ts
contient un contrôleur avec les méthodes CRUD correspondantes pour le modèle MyAsset
.
Sortie